2013-04-08 50 views
0

我正在开发的Android技术 一个大的项目,有时我有这样一些例外(内存不足错误)的行为,我做了一个异常发生时是什么,重新打开应用程序怪在小型设备上 Android应用

什么,它让以前的进程打开的发生,与新的应用实例中打开一个新的进程

我试图让 完成() 杀死进程 System.exit

关闭应用程序并重新打开它,但没有为我工作

任何帮助吗?

+0

实际应用程序的工作是什么?并且在你的应用程序中使用图像或任何媒体? – Ajay 2013-04-08 08:51:30

+0

是你在你的应用程序中使用大量的图像文件。 – 2013-04-08 08:51:56

+0

是的,我从服务器端后端加载数据和图像,并将它们存储在设备的本地缓存中。 – 2013-04-08 08:53:04

回答

0

当设备中的RAM被充分利用时,内存不足会发生,系统会抛出该错误并终止/重启进程。您需要找到适当的地方,使用大部分内存并正确处理内存。内存不足通常是由于较差的位图/图像处理而发生的。检查你的代码,你在哪里处理Bitmaps/ImageViews/PNG等。

0

Android的默认堆大小几乎适用于每个重负载作业。跟踪你的代码,并找到代码中的内存消耗部分,并尝试优化它们。为此,请在Eclipse中的DDMS视图中使用HEAP选项卡。

1

首先你必须照顾的事情是堆大小。你可以跟踪当你运行应用程序时消耗了多少内存。在DDMS的视角下,有一个堆标签,它会告诉你运行应用程序时消耗多少内存。 你正在测试的是什么版本的android? Android Os会为每个应用程序分配一些内存来运行。在Android 2.2中,16MB将被分配给一个应用程序。版本2.3为应用程序分配24Mb,Android 3.0分配42Mb。尝试测试不同版本的Android,你会知道..

0

是的,这是问题。我最近面临类似的问题,然后我调整我的images然后我的问题解决了。试图找出一种方法如何减少您从sever sideback-end加载的size ofimages

相关问题