我有一个使用jquerymobile和phonegap的Android Web应用程序。
我已经压缩了js/html,将脚本放在页面底部,但我仍然对应用程序的性能不满意,尤其是当我的脚本正在进行DOM操作时。
触摸事件的响应非常缓慢(>2秒或事件以上)。
使用Android浏览器/Android Firefox进行测试,结果仍然相同。
当我将性能与普通桌面浏览器/iPhone Safari/BlackBerry浏览器/诺基亚浏览器进行比较时,我的应用程序会做出响应。
规格:
- 三星Galaxy Tab II
- 安卓ICS 4.0
- 电话间隙1.8.0
- jquerymobile 1.1.0
回顾我已经尝试过的:
- 更快地做好设备准备
- 使用YUI压缩器最小化/压缩JS代码
- 将脚本标记移动到body标记的底部
尝试以下操作。
添加:
webview.getSettings().setRenderPriority(RenderPriority.HIGH);
webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
清单:
android:hardwareAccelerated="true"
此外,整理和缩小脚本(而不仅仅是缩小),并大量使用.dedestroy()来保持DOM修剪。
不幸的是,Android上的PhoneGap是出了名的慢。