0

我正在使用android技术开发一个大型项目,有时我在小型设备上遇到一些异常,例如(内存不足错误)发生异常时我所做的是重新打开应用程序

它使先前的进程保持打开状态并使用新的应用程序实例打开一个新进程会发生什么

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

关闭应用程序并重新打开它,但对我没有任何作用

有什么帮助吗???

4

4 回答 4

1

您必须注意的第一件事是堆大小。您可以跟踪运行应用程序时消耗了多少内存。在 DDMS 透视图中,有一个堆选项卡,它将为您提供有关运行应用程序时消耗了多少内存的信息。你正在测试什么版本的android?Android Os 将为每个应用程序分配一些内存来运行。在 android 2.2 中,16mb 将分配给一个应用程序。版本 2.3 为应用程序分配 24Mb,Android 3.0 分配 42Mb。尝试在不同版本的android上进行测试,您将了解..

于 2013-04-08T08:59:25.657 回答
0

是的,这就是问题。我最近遇到了类似的问题,然后我调整了我的大小images,然后我的问题就解决了。尝试找出一种方法来减少你从中加载size of的那个。imagessever side back-end

于 2013-04-08T09:08:59.420 回答
0

当设备中的 RAM 被充分利用时会发生内存不足,系统将抛出此错误并终止/重新启动进程。您需要找到使用最多内存的适当位置并正确处理内存。内存不足通常是由于位图/图像处理不佳而发生的。检查处理 Bitmaps/ImageViews/PNG 等的代码。

于 2013-04-08T08:52:28.530 回答
0

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

于 2013-04-08T08:53:36.577 回答