Cordova 减少phonegap、iOS上的sencha touch(iPad)的内存占用

Cordova 减少phonegap、iOS上的sencha touch(iPad)的内存占用,cordova,sencha-touch,Cordova,Sencha Touch,我正在使用Sencha Touch 1.1和PhoneGap在iPad上部署代码。在Instruments中,内存使用量显示在140MB左右(虚拟内存),然后在某些地方会上升到200MB以上,我的应用程序有时会因为我正在修复的大列表而被杀死,以减少DOM占用空间。我试着在Safari上测试sencha touch应用程序,但内存没有增长到这些极限,Safari启动时的内存约为160MB,上升到200+MB,但大多数时间都保持在170-180MB的范围内 我的下一个测试是找出PhoneGap框架的

我正在使用Sencha Touch 1.1和PhoneGap在iPad上部署代码。在Instruments中,内存使用量显示在140MB左右(虚拟内存),然后在某些地方会上升到200MB以上,我的应用程序有时会因为我正在修复的大列表而被杀死,以减少DOM占用空间。我试着在Safari上测试sencha touch应用程序,但内存没有增长到这些极限,Safari启动时的内存约为160MB,上升到200+MB,但大多数时间都保持在170-180MB的范围内

我的下一个测试是找出PhoneGap框架的影响。当我安装phonegap并试用它时,示例Hello world应用程序似乎已经使用了大约100 MB(虚拟内存)。我试图在网上搜索,以确定如何减少这一足迹,但没有找到任何东西

我的问题是:我能做些什么来减少phonegap占用空间,它是否与帮助减少我的应用程序崩溃相关?我看到了Flipboard等其他应用程序,它们本机使用的内存(60-70 MB)要少得多,并且试图理解为什么phonegap应用程序的基本内存是100+MB,而基于phonegap+sencha touch的应用程序的内存在150-200 MB之间


Anand

您应该考虑删除PhoneGap应用程序加载的插件数量。它要么由xml文件(Android,BB)控制,要么由plist(iOS)控制。例如,如果你不使用联系人,那么就不要加载该插件,等等。

你说你在Safari中的应用大约有160MB,所以我认为这不仅仅是(至少)phonegap。因此,尝试改进sencha touch应用程序。也许你不会破坏你不使用的容器或类似的东西。查看此视频以了解详细信息:

仅为结束,移动到Sencha 2.0并使用PhoneGap 2.0,内存使用量仍在150~200 MB范围内,但现在应用程序上的所有使用量都没有出现崩溃。我见过像Flipboard这样的应用程序消耗350MB,但仍然可以工作,所以现在这不是一个问题


基本的Safari移动浏览器占用的内存范围在100~150+之间,因此我不能期望使用率会下降很多。

是的,我已经在Sencha touch端修复了很多东西,但我看到的是,当我登录我的应用程序时,这意味着Sencha touch已加载,我的应用程序代码已加载,最小的DOM只有一个登录屏幕,已经达到135-140MB。更大的贡献是phone gap及其基础设施的容量为100 MB,因此我们希望看看是否可以减少。我做了一些事情,比如销毁不需要的项目,使用通用事件处理程序,内存得到了改善,也开始使用UxBufferedList,这有助于减少内存,但是仍然有一些令人讨厌的副作用需要在UI中修复。所以,现在内存得到了更多的控制,但仍然很高。你也可以尝试缩小你的JS文件。您还尝试过新的Sencha Touch原生包装器吗?已经使用Sencha build jsb3文件完成了js文件的缩小和构建,css处于生产模式。所以所有简单的事情都已经完成了,我正在寻找我能做的,更多关于phonegap的事情。我也在试用Sencha Touch 2.0 B2和本机包装,看看这是否有助于减少占地面积。感谢您的调查。我经常用phonegap开发应用程序,并担心内存消耗,但从来没有时间亲自检查。请返回ST2本机打包的结果。已删除PG plist中XML文件中的大部分内容。这仍然没有帮助,因为所有这些都是100 MB的内存。测试非常简单,只需在XCode中启动一个默认的PG项目,从plist中删除内容,然后运行并安装。如果这是正常的或预期的行为,这是可以的,但希望PG使用更少。