我正在使用android技术开发一个大型项目 有时候我会在小型设备上遇到一些例外情况(Out Of Memory Error) 发生异常时我所做的是重新打开应用程序
它会使先前的流程保持打开状态并使用新的应用程序实例打开一个新流程
我试图制作 完() 杀人过程 System.exit
关闭应用程序并重新打开它但对我没什么用处
任何帮助请???
答案 0 :(得分:1)
首先你必须要处理,是堆大小..你可以跟踪运行应用程序时消耗了多少内存。在DDMS透视图下,有一个堆选项卡,它将为您提供有关运行应用程序时消耗的内存量的信息。 你正在测试什么版本的android? Android Os将为每个应用程序分配一些内存来运行。在android 2.2中,将为一个应用程序分配16mb。版本2.3为应用程序分配24Mb,Android 3.0分配42Mb。尝试在不同版本的android上测试,你会知道..
答案 1 :(得分:0)
当设备中的RAM被完全利用时,内存不足,系统将抛出此错误并终止/重启进程。您需要找到使用大部分内存并正确处理内存的适当位置。内存不足通常是因为位图/图像处理不佳而发生的。检查代码处理Bitmaps / ImageViews / PNG等的代码。
答案 2 :(得分:0)
Android默认堆大小几乎适用于每个重载作业。跟踪代码并查找占用代码部分的内存并尝试优化它们。为此,请在Eclipse中的DDMS视图中使用HEAP选项卡。
答案 3 :(得分:0)
是的,这就是问题。我最近遇到了类似的问题然后我调整了images
的大小,然后我的问题就解决了。试着找出一种方法来减少size of
{{1}您从images
sever side
加载的内容。