PhoneGap – 与Android上的浏览器相比性能较差

我使用jquery mobile和phonegap开发了一个android应用程序。 我通过USB部署应用程序到我的设备。 该应用程序的性能非常糟糕,尤其是在滚动更长的列表时。

奇怪的是,如果我只是打开手机上的浏览器,直接访问index.html,整个应用程序运行平稳。 相同的技术,相同的内容。 我不使用phonegap native api或类似的东西。

testing与Android 4.0.2上的phonegap 1.5.0和1.7.0rc1,jquery mobile 1.1.0。

有任何想法吗?

Solutions Collecting From Web of "PhoneGap – 与Android上的浏览器相比性能较差"

在蜂窝(3.0),冰淇淋(4.0)和后部设备上,您可以通过在<Application …>标签中添加以下内容来提高性能:

android:hardwareAccelerated="true" 

您可以将minSdk设置为8(Android 2.2)兼容性,targetSdk设置为15(Android 4.0),只有在设备上可用时才会使硬件加速工作。

我相信,用这个标志我的应用程序的性能等于在浏览器中运行它们,所以我猜是因为浏览器是用硬件加速编码的:)

我有一个类似的问题:一个页面有更长的“中等复杂”主题div列表。 HTC手机的浏览器在显示方面没有问题。 但在phonegap应用程序渲染完全失败。 我看到一种WSOD,只有在触摸显示屏后才消失。 触摸后,页面显示正确。

这个问题还没有到位,当我将div列表缩短为一个或两个div元素,或者当我缩小了div中的子元素,并减less了css复杂性导致的渲染效果时。

白色的屏幕看起来像,如果整个身体是不可见的,因为只有文件背景颜色显示(我为此添加了一个浅粉红色)。 所以我想,阅读这个线程后渲染是问题

我尝试了我在这个线程中发现的各种build议,使应用程序在没有“WSOD”的情况下工作。 但没有任何工作。 其中一些使应用程序显示更糟糕。

最后,经过一整天的search,我做到了。 我在AndroidManifest的标签(而不是标签)中设置

 <application android:hardwareAccelerated="false" ... 

现在,该应用的行为与我的浏览器一样快速。 看起来像,如果硬件加速并不总是最好的function…

我的版本:phonegap 3.5.0,Android 4.0.3,jQuery v2.1.0,HTC Sense 3.6

在这里find答案: http : //groups.google.com/group/phonegap/browse_thread/thread/94da1cf881abe995/6d4f7aea7aeba523?lnk=gst&q=performance

在JavaScript性能方面,原生浏览器和webview可能有区别。

如果您可以确认浏览器的性能更好(这不是代码中不理想的代码而不是其他代码),您可以考虑将其部署为html5脱机应用程序,以便您可以真正在浏览器中运行。

我们碰到性能问题,同时滚动jquery移动相同数量的列表项。 性能非常差(我们甚至没有尝试在PhoneGap环境中),我们使用iScroll库重写应用程序…现在应用程序滚动真的很顺利。

如果您正处于开发阶段,则可以尝试更改UI库。

在这种情况之后,我们部署我们的应用程序来经常testing设备来及时pipe理性能问题……这成为了一个“策略”:)