New iOS 8 APIs trigger higher app crash rate
- 25 September, 2014 05:12
In its first days of availability, iOS 8, Apple's newest mobile operating system, has exhibited an app crash rate significantly higher than iOS 7 did a year ago, an app performance management developer said yesterday.
According to San Francisco-based Crittercism, iOS 8's crash rate as of Monday was 3.3%, or about 65% higher than iOS 7 at the same point in its post-launch timeline.
The crash rate measurement was from the approximately 20,000 mobile apps that Crittercism monitors for clients, which include eBay, Groupon, Netflix, PayPal and Yahoo. Developers embed the company's framework in their apps to track a host of performance metrics, including crash causes and rates.
Not surprisingly, the highest app crash rates on iOS 8 came from older iPhones, including the iPhone 5, 5C and 5S. Apps on those devices crashed 3.3% of the time on Tuesday, the latest day for which Crittercism had data, while those on the brand-new iPhone 6 and 6 Plus crashed 2.6% and 2.1% of the time, respectively.
Andrew Levy, co-founder and CEO of Crittercism, attributed the higher app crash rates for iOS 8 to the blizzard of new APIs (application programming interfaces) that Apple introduced in the new operating system.
"Apple, to their credit, released a ton of great new functionality [in iOS 8], with twice the number of new APIs than iOS 7," said Levy in an interview. "Some of those APIs are for screen optimization, some are for GPU usage. It's actually a combination of things. Apple deprecated some APIs, changed others, making it really tough for the ecosystem to keep up."
The changes -- new APIs, changed APIs, dropped APIs -- meant that apps written earlier, in most cases targeting iOS 7, were more likely to crash under the new iOS.
Levy explained the lower app crash rate on the iPhone 6 and 6 Plus -- the latter's rate was 36% lower than the combined pre-iPhone 6 models -- to optimization of the OS on those devices, particularly APIs for responsive design, necessary to account for the proliferation of iPhone screen sizes, and for more efficient use of the graphics processor (GPU).
Also likely, acknowledged Levy, was that owners of the new smartphones had fewer apps installed at this point than the upgraded-to-iOS 8 iPhone 4S, 5, 5C and 5S devices. The adding-apps explanation seemed to be supported by Crittercism's data, which showed that app crash rates climbed on the new iPhone 6 and 6 Plus as soon as customers got their hands on them. The older models' crash rate remained much more stable.
While the app crash rate on the iPhone 4S, 5, 5C and 5S increased by 15% between Sept. 17 -- the day Apple released iOS 8 -- and Sept. 23, the iPhone 6's app crash rate rose by 202% in the same period, most of that increase before the smartphone reached customers. The iPhone 6 Plus's rate, meanwhile, increased by 150%.
(Crittercism had pre-sales app crash rates for the iPhone 6, probably test units owned by Apple engineers and employees who launched an app with Crittercism's framework embedded in the code.)
Levy also speculated that the new Swift programming language, which Apple also introduced this summer, might be part of the cause for the increased app crash rate. "With an immature language, you're going to see issues," Levy said.
By Crittercism's metrics, 27.4% of all iOS devices running its clients' apps were powered by iOS 8 on Tuesday, a considerably lower number than Apple's 46% that accessed the iTunes App Store on Sunday.
But regardless of the higher crash rate, Levy praised iOS 8. "All in all, with the amount of changes [in iOS 8], Apple is doing an even better job this year," he said.
Levy had no problem recommending that consumers upgrade their iPhones and iPads to iOS 8, but cautioned businesses to hold off for now. "You don't have to be on the bleeding edge," he said, what with the risk that a mission-critical mobile app will fail.
Things should improve, perhaps rapidly, as Apple quashes bugs and app developers revamp their wares. "Over the course of the [iOS 8] betas, the failure rate went down," Levy said and pointed out that last year issued three iOS 7 updates in just over a month.
Levy was prescient: Apple released iOS 8.0.1 today, but then quickly pulled the update after customers flooded the firm's support discussion forum with reports that they'd lost cellular service on the new iPhone 6 and 6 Plus models.