我们从phoneGap升级到Cordova 2.2后,应用程序运行速度明显变慢。我们正在测试iOS 5和iOS 6,目前还不知道是什么原因导致这种放缓。它没有发生在phoneGap上。
我们确实有一个非常复杂的应用程序和大量的插件。
我只是想知道是否有其他人有这个问题以及是否有可能的解决方案。
谢谢你, 帕斯卡
答案 0 :(得分:3)
当我们从PhoneGap Build上的Cordova 2.1.0切换到使用带有XCode的Cordova 2.2.0时,我们遇到了类似的问题,发现性能显着下降;在对UI操作的响应方面,我们的应用程序很容易是原始速度的1/5到1/10。
我们发现默认情况下,所有插件都在XCode中启用,并且能够通过禁用不必要的插件(尤其是Accelerometer)将性能恢复到适当的级别。见http://iamcam.wordpress.com/2009/10/29/phonegap-up-to-speed/
在禁用插件之前(快速简便的解决方案),我们花了相当多的时间来清理代码(困难但有价值的解决方案)。具体做法是:
- 增加3D变换到我们知道我们将操纵的项目(强制硬件加速;某些操作的显着性能增益)和硬件加速滚动(-webkit-overflow-scrolling:touch;)
- 删除无关的调用以获取对象位置和偏移量(某些操作的显着性能增益)
答案 1 :(得分:1)
阅读jmshearer的帖子&链接,删除加速度计插件也是我们最大的性能改进,但值得从XCode中的Cordova.plist中删除任何不必要的插件并重新编译。