Phonegap应用程序使用高RAM,因为filereader()并且由于内存使用而将加载的图片更改为白色

时间:2013-07-09 12:38:04

标签: cordova ram filereader

我有一个Phonegap应用程序,我将其用作相册。 我正在阅读带有FileReader功能的jpg文件,大约1,000张图片,大小为400pxx350px。 打开应用程序后,它会将所有照片加载到一起,大约需要1.5分钟。 应用程序的ram使用(缓存)大约为350MB。 使用该应用程序一段时间后,在图片之间导航,RAM使用量增加到约450-500MB,然后一些已正确加载的图片变为白色而不是图片,如果使用该应用程序更多,它有时会崩溃。 如果关闭应用程序并重新启动它,它将再次启动350MB的缓存RAM,并再次使用它几个小时,直到RAM使用率再次增加,并且一些照片再次变为白色。

如何减少RAM使用量?或者也许有更好的方式加载图片? 谢谢, 奥菲尔。

1 个答案:

答案 0 :(得分:0)

这些尺寸的1000张图像是大量数据,因此需要大量的RAM。你真的需要所有1000同时在内存中吗?我不知道你的应用程序的用户界面布局和用例要求,我只是推测,但是你不能,例如,按需要异步加载每个图像,因为它需要显示?或者,如果从文件系统读取图像的延迟在显示图像时产生了不可接受的延迟,则可以预先加载一些图像,例如,如果它们在序列中,那么只需要在内存中有一对图像。当前显示的图像。