android应用程序内存泄漏

时间:2009-12-23 18:25:22

标签: android memory-leaks

我正在使用一种结果搜索引擎,问题是要记住搜索条件我制作的单例静态类只保留一个实例。

在我的应用程序中,有许多类级私有变量,许多公共静态变量,一个只包含静态最终方法的大型util类。

问题是我的应用程序崩溃任何时候任何地点和有趣的事情是崩溃代码总是被try {} catch(Throwable e){}块包围但永远不会捕获,我认为它可能是内存已满的问题。

我想讨论一个示例案例,在结果页面上我还显示结果相关图像,我从web下载图像并在imageview中使用drawable i place image,我创建了静态hashmap以重用图像,一段时间后下载5图像应用程序崩溃有时单击结果获取用户到新的详细信息屏幕崩溃和所有代码包围try catch块,我是移动程序的新手这件事已成为我的夜魇。

最后一件事,在模拟器上几乎没有应用程序崩溃,但当我尝试在设备上测试应用程序时,我正在使用三星glaxy android支持测试应用程序它变得平静,突然它开始崩溃,并在崩溃后重新启动活动在每次点击时抛出空指针异常,并通过try {} catch {}块捕获我认为崩溃后的android dealocate所有对象只保留UI对象,这就是为什么在崩溃后我自动启动活动点击导致空指针异常。

如何停止重新启动崩溃的活动????

1 个答案:

答案 0 :(得分:1)

以下是一些可能有助于追踪您的问题的建议:

  • 介绍日志记录 - 使用Log记录有用的(调试)信息
  • 避免空捕获块 - 使用Log.e()记录您的例外
  • 将功能降低到最低程度以进行调试

为了在Stackoverflow上获得有用的答案,您必须执行上述所有操作并提供更详细的问题描述(例如,logcat输出中的特定堆栈跟踪)。

另外,有一篇关于Avoiding Memory Leaks的文章可能对您有用。