2011-11-21 53 views
12

当我编译并将演示应用程序部署到我的Samsung Galaxy S II后,我注意到随PhoneGap附带的示例PhoneGap应用程序在按按钮和滚动时并不十分响应。PhoneGap很慢或者是一个错误?

我也用PhoneGap和jQuery Mobile做了一个小应用程序,用4个按钮一切正常,但是当我添加了超过7个,并且我的视口需要滚动时,滚动变得非常慢,更多的按钮/小部件滚动的速度越慢。

这是一个bug具体到我的移动设备或它的PhoneGap是如何工作的: 是PhoneGap的应用感受我的手机包括演示慢的事实呢?

编辑:

从我的笔记本电脑的HTTP服务器提供服务,并推出了标准的Android浏览器相同的PhoneGap应用程序的工作非常顺利

回答

4

由于PhoneGap的和用于与它的框架(JQM, Sencha Touch等)只是在WebKit浏览器中工作,如果渲染太多,它们可能会变慢。

您的设备或其他设备实际上没有错误。只是PhoneGap和框架不太好,如果您想要快速响应等等。您可以在其他设备上试用您的应用程序,并且可以观察到它们的行为相同。

+1

本地应用程序将始终在性能方面击败解释的跨平台的东西,但(可能)会损失开发速度 –

+1

是的,但希望有一天,随着更多'网络'启用的应用程序的进步,这将改变。 – Jack

+0

我也希望如此,因为如果你有一个网页背景,使用这样的框架开发更容易。 –

6

尝试将您的targetSdkVersion设置得更高。将我的地址从"8"(即Android 2.2)更改为"14"(Android 4.0)可显着提高运行新版Android的手机上的PhoneGap性能。这很可能会启用某些性能增强功能,例如硬件图形加速。

欲了解更多信息请参阅我的其他回答关于此位置:https://stackoverflow.com/a/12397768/233370

3

我有同样的问题,更新到Android 4.0.4之后,我的PhoneGap(科尔多瓦2.0.0)&煎茶触摸2 - APP是非常非常慢。

但我插入

super.appView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 

后的APP正常工作,如更新之前。

http://developer.android.com/guide/topics/graphics/hardware-accel.html

+0

或者,您可以在应用清单中禁用硬件加速。 –

+2

@JonathanRowny&Walter - 我很困惑。硬件加速不应该让事情变得更快吗?为什么需要为Android 4+禁用它!你能解释一下吗?我有同样的问题。 – AtanuCSE

0

为了提高性能,你可能并不需要的PhoneGap。

如果您需要的是快速跨平台样式但快速的本地组件尝试使用像nativecss.com这样的工具。它将样式保留在CSS中,但对其他所有内容使用本地组件 - 因此不会出现HTML呈现延迟或笨拙的动画。

相关问题