Apple handcuffs 'open' web apps on iPhone home screen
Three bugs? Or three-headed App Store conspiracy?
Down to the test
According to tests from developer Maximiliano Firtman, author the O'Reilly tome, Programming with the Mobile Web, Apple iOS 4.3 runs web applications in the browser about two times faster than when they're launched from the home screen into full-screen mode. And like the three other developers we spoke to, he's sure this is because home screen apps can't take advantage of Nitro.
Running in Safari on an iPhone 4 loaded with iOS 4.3, Sunspider took about 4047ms:
Running from the home screen, it took about 10747ms:
Apple isn't degrading the speed of home screen web apps. It's boosting the speed of web apps in the browser. But in the long run, the effect is the same. And if this is a bug, Apple has yet to fix it.
On top of this, apps are hampered by the cache and asynchronous mode issues. According to one anonymous developer, access to certain web caches was cut off in iOS 4.2. And the issue is confirmed by a second developer. You can try it yourself with HTML5 apps such as Pie Guy. With earlier versions of the OS, if you move the game to the home screen and run it once, you can then play it offline. But if you try to do so on the latest version of the operating system, you can't.
The first developer also says that WebView native apps and home screen web apps are rendered in synchronous mode, whereas on iOS 4.3, they're rendered in asynchronous mode. "[With synchronous mode], you will sometimes see this weird grid of dark squares," he tells us. "Basically, when repainting the screen, synchronous mode can sometimes show your UI partially repainted."
This developer reiterates that if Apple didn't specifically introduce these problems in iOS, it's aware of them now. And he says that the Mobile Safari team has indicated the issues will not be fixed.
If Apple won't fix them, he says, Google should. "The Android team needs to pick this up and compete on it." ®
Updated: This story has been updated to make it clear that the speed difference occurs when home screen apps are launched into full-screen mode.