"Since this is the first OS release with Nitro on the Mobile Safari browser, it is probably safe to assume that this is merely a bug or limitation," he said. Despite the technical challenges in adapting Nitro to work safely within the UIWebView framework, developers like Icaza are optimistic Apple will enable the new JavaScript engine for apps with embedded web views.
#Apple ios webkit app infrequentlynoted code
"Third parties have never been able to get access to this - not Mono, not Java, not Lua, not JavaScript, or any other runtime, compiler, or library that generates native code dynamically."Īs a result, applications that use the UIWebView framework, including web apps launched from the home screen, will not enjoy the performance optimizations available to Apple's mobile Safari web browser. "It seems that people are attributing to malice what can easily be explained by history - iOS has never allowed user code to generate code on demand, and this has for years prevented JIT compilation from taking place," Icaza told Ars Technica. Miguel de Icaza, a lead developer for both GNOME and Mono, said he suspects the issues are legitimate technical problems and not a conspiracy. Unfortunately, for security reasons, other applications developed for iOS aren't typically granted permission to execute dynamically generated native code. Nitro's ability to dynamically generate and execute code enables it to process JavaScript much faster than its predecessors. Ars Technica observes the Nitro JavaScript engine uses a technique called "just-in-time compilation" to transform dynamic JavaScript code into machine code optimized for the ARM processor architecture.
The real reasons for the performance gap may not be so sordid. Matt Asay, vice president of business development for Strobe, indicated that Apple filed the performance gap as a bug but marked it "not to be fixed by exec order." On Twitter, Asay called the scenario "slimy" and suggested it's partly a tactic for convincing developers to focus on the development of native apps. "Apple is basically using subtle defects to make web apps appear to be low quality - even when they claim HTML5 is a fully supported platform," the developer claimed in The Register. One anonymous developer suggested Apple purposefully omitted the enhancements to subtly degrade the web experience in non-Apple browsers and web apps launched from the home screen. Many developers voiced concerns about Apple's decision to exclude third party apps from taking advantage of the Nitro JavaScript engine included in iOS 4.3. Apple refuted Blaze's results, citing the differences between Safari and the embedded web viewer.
#Apple ios webkit app infrequentlynoted android
The debate deepened yesterday when Blaze Software released the results of a study that implied Android loaded web pages 52% faster than the iPhone 4. "The embedded web viewer does not take advantage of Safari's web performance optimizations," Trudy Muller, a spokesperson for Apple, told The Register.Īpple's statement comes as a response to controversy started earlier this week when developers first recognized the notable performance gap between mobile Safari and the embedded web views in their own applications. The optimizations, which double JavaScript performance in Mobile Safari, are not available to the underlying web view framework that powers the embedded browsers in other apps. The web performance enhancements included in Apple's latest mobile operating system, iOS 4.3, are exclusively available to the mobile Safari web browser, an Apple spokesperson has confirmed.