我正在使用为webkit浏览器构建的网络应用程序,它非常重要。该应用程序在Safari浏览器中运行相当顺畅,并且在我的3g网上初始加载大约是1.5-2秒(iPhone 4s iOS 6)。但是,当我从主屏幕启动应用程序时,启动画面将保持5-6秒,有时甚至更长时间(已报告它可以停留大约10秒钟)。
我想知道这种差异有多大?可以采取哪些措施来减少这种负荷?
感谢任何帮助。
答案 0 :(得分:1)
如果您使用的是加载WebApp的UIWebView,那么您使用的是不支持JS的JIT优化的WebKit版本(source)
我会以较小的碎片打破应用程序并尝试尽快向用户显示内容,然后继续在后台加载JS。我知道这不好,但如果你的问题是一个沉重的JS应用程序,你就会陷入非JIT WebKit引擎(AKA UIWebView)
查看WWDC 2012会话601:在iOS上的UIWebViews和网站中优化Web内容(您需要成为注册的iOS开发人员),并听取Cocoanetics podcast的这一集
很想知道一些优化。
答案 1 :(得分:0)
从主屏幕启动的网络应用程序比从Safari内部启动的网络应用程序慢,因为主屏幕没有利用Safari的Nitro Javascript引擎。
来源:http://thenextweb.com/apple/2011/03/17/apple-admits-to-slower-performance-in-ios-web-apps/
是的,这篇文章有点陈旧,但我找不到任何说明情况不再如此的信息。