我在我的应用程序中使用了一个外部 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/