什么时候应该在 android 中处理位图内存管理或回收位图?
例如,在 android 中创建位图的方法很少,如下所示
Bitmap.createBitmap
Bitmap.createScaledBitmap
BitmapFactory
但是在android为位图分配内存的时候,必须要清除掉,这样在以后的应用中才不会遇到内存不足的错误问题
最佳答案
在 Android 3.0 之前的版本中,位图是在 VM 之外分配的。 Android 在 Bitmap 的 finalize() 方法中取回此内存。您可以通过调用 Bitmap.recycle() 而不是等待 GC 对它们调用 finalize() 让 Android 更快地回收内存。
只有在创建和丢弃大量位图时,这才是真正的问题。也就是说,如果您分配内存的速度更快,那么 GC 可以清理留下的垃圾,此时您会收到 OutOfMemoryError。
在 android 3.0 及更高版本中,Bitmap 内存在 VM 内部分配,因此无需调用 finalize() 即可回收 Bitmap 内存。
关于android - 在android中回收位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4578865/