更新:现在已经有更多的ST2现在更长的工作表现Android上的挑战只是你必须接受的。有很多事情可以做,以避免性能问题,如减少听众和事件,保持您的DOM灯(低于2000个节点),并通常避免任何CSS3转换和效果(这些特别是在Android上表现不佳)
另一件需要考虑的事情不是使用内置的WebView,而是使用CrossWalk浏览器并将其嵌入到APK中。
https://crosswalk-project.org
它增加了一个小尺寸的APK(15-20MB),但它的性能比内置的WebView更好,带来了稳定性和一致性,以一个非常分散的平台。考虑一下这样的现实:Android上的每个WebView取决于设备,供应商和操作系统版本可能在小方面有所不同。 CrossWalk将允许您在所有Android 4.0+设备上拥有完全相同的版本,并删除任何设备或供应商特定的问题。
没有银弹在Android上的表现。图形加速不会改进纯JavaScript执行或DOM操作的执行。如果你想知道为什么,然后从这里开始:
What's the difference between reflow and repaint?
年长的答案(可能仍然有效):
对于ICS及以上的web视图以下设置将显著提升渲染性能为煎茶触摸Android上:
mWebView.setLayerType(WebView.LAYER_TYPE_HARDWARE, null);
但是以我的经验,这将取决于设备和平台VA引进的文物到CSS渲染riation。我没有具体找到这个原因,我也不希望谷歌解决它,因为webview组件将被Android 4.4中的更新和更好的版本取代。
https://developers.google.com/chrome/mobile/docs/webview/overview
请参阅。我也使用phonegap和sencha。但直到现在,我还没有在性能方面遇到太多问题。可能是因为一些本地功能如条形码扫描等一切都很慢。但并不多。我会建议使用最新的corodova.jar文件。可能是1.8或1.9 – 2012-07-12 11:02:11
我们实际上使用的是科尔多瓦版本1.9,但仍然表现不佳。我不得不提及,我们不是将其作为MVC应用程序开发,因为这是我们的第一个使用Sencha的项目,因此必须影响性能。许多人提到,问题的根源在于Phonegap工作的android的Web View,显然它对于heave站点来说并不好。 – user1520547 2012-07-12 11:26:30
但我使用的是MVC架构。所以UI部分,我使用Sencha Touch 2和本地部分使用phonegap。但直到现在表现明智,这是好事。 – 2012-07-12 11:35:26