android - Android 上的 OutOfMemory 异常

标签 android memory memory-management memory-leaks out-of-memory

我在我的应用程序中使用了一个外部 jar 库,它使用位图。这会导致我的应用程序出现内存不足异常。此类问题在以下问题中进行了描述: http://code.google.com/p/android/issues/detail?id=8488

一旦 OOME 发生,Activity 崩溃,应用程序仍在运行,内存将被释放,但 wifi 连接将丢失。

有没有办法在 Activity 崩溃之前释放内存?可能,我应该说,我无权访问库正在使用的位图。我还尝试在 onPause 和 onDestroy 中调用 System.gc(),但这没有帮助。

为什么当 Activity 崩溃时会释放内存?

wi-fi 连接发生了什么?

谢谢

更新

这个图书馆是osmdroid

最佳答案

尝试用你自己的扩展Application类(需要声明AndroidManifest.xml)。在那些 Application 类中,有一个方法 Application.onLowMemory() - 必须在内存不足时调用。您可以覆盖此方法并尝试释放不需要的资源。可能会有用。

关于android - Android 上的 OutOfMemory 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4931217/

相关文章:

c - 指针被释放但 valgrind 说它不是

Android fragment 管理器内存泄漏

c - 写一个动态分配内存的函数,比如 malloc

c++ - 为什么 gcc 不编译这个调用 free() 函数的微不足道的代码?

android - 为什么android会得到错误的ssl证书? (两个域,一台服务器)

java - 在使用自签名证书签名的服务器上调用 API

android - 如何诊断 Xamarin Android 弱引用表溢出的原因?

c# - 迭代大型数据集时出现 OutOfMemoryException

java - Volley 使用单例将访问 token 附加到每个请求

java - 当我解析 json 时应用程序崩溃