Apple Reportedly Sandbagging Performance of Home Screen Web Apps

Apple-10BillionDownloads-Jan-2011

Web apps saved to the home screen of iOS devices run less than half as fast as the same apps launched from the Safari browser and don’t have offline caching access, according to a report by the Register. The site said web apps opened from the home screen are not able to take advantage of iOS’ updated Nitro JavaScript engine in 4.3, offline caching and asynchronous mode for better-looking apps. While this could very well be a bug that is yet to be fixed, it raises conspiracy suspicions of some who wonder if Apple is not in any hurry to have web apps on the home screen compete with native apps, which Apple gets a 30 percent cut of.

This comes not long after Apple also required publishers to use its in-app purchase system for subscriptions, which has prompted a lot of grumbling from some developers and publishers because it forces them to give Apple a 30 percent cut of revenues. One way to get around that would be to build web applications, which can be saved as bookmarks on to a home screen and can appear like a traditional native app. Apple has said it embraces both native and web applications built in HTML5 and other web standards. But if web apps launched from the home screen are slower or are crippled, it does give Apple’s native apps a better competitive edge. And it could be a big incentive for developers to stick with native apps rather than try and build web apps. That’s where concerns are popping up. A discussion on Hacker News includes suspicions that this is intentional.

“It makes web apps (that work with any platform) slower, while native apps are not penalized. That increases Apple’s revenue because it will encourage people to make native apps instead of web apps, which has a two-fold effect: one, they get 30 percent of the app’s revenue, and two, you have to buy an iPhone to use it,” said one commenter.

Now that is assuming the performance problem is purposeful. Again this could be a bug, though the Register quotes a developer who alerted the Mobile Safari team to the situation and said Apple indicated the situation will not be fixed. I have reached out to Apple and am waiting a response. In the meantime, here’s the details of the problem as reported by the Register:

The Safari browser includes a new Nitro JavaScript engine but that doesn’t appear to be available to apps launched from the home screen. That translates into web apps on the home screen running two to two and half times as slow as their Safari counterparts. Home screen web apps also can’t take advantage of web caching systems that allow an app to keep running even when offline. Web apps are also using an older “synchronous” mode of presenting content, instead of the new “asynchronous” mode which renders the screen better. The Register said that the issues also affect native apps that utilize Apple’s UIWebView API, basically native apps that are built in HTM5 and wrapped with a native wrapper. That means that native apps that lean heavily on web content can also see decreased performance.

If suspicions prove true and Apple is throttling the performance of some web apps, that would call into question its intentions behind supporting HTML5. Already, it has an advantage in promoting HTML5 and mobile web standards because they usually result in apps that are behind natively built apps. But the gap is closing and some developers are looking at building more applications built off the web, especially in light of Apple’s new subscription rules. I doubt though that Apple will leave this situation uncorrected, now that it’s come to light. If it wasn’t planning on fixing this quickly, it will now. It’s hard to see what the argument would be for leaving this situation in place except to boost downloads of native apps and hinder competition. Unlike the subscription rules, which can be argued are a big benefit to consumers, it’s hard to see how Apple could paint this as beneficial. So stay tuned for an update. Who knows, though, I could be wrong.

loading

Comments have been disabled for this post