我正在尝试找到一种有效的方法来处理从MediaStore
. 实际上,缩略图有两种:MICRO_KIND
一种是方形的,大小为 96x96,与设备或平台无关;MINI_KIND
横向图像约为 512x384,纵向图像约为 288x512,也与设备和平台无关。现在,我正在使用异步Bitmap
加载、回收和缓存的所有最佳实践,实际上我的应用程序在我使用MICRO_KIND
. 无论如何,这不是我想要的,尤其是对于平板电脑,这样的小图像看起来很糟糕。我试过使用MINI_KIND
,但它很快就超过了内存限制,更不用说实现了。另一个麻烦是肖像图像有肖像缩略图,我需要它们都是矩形风景。我已经尝试Bitmaps
在保持纵横比的情况下进行裁剪和调整大小,但这让我更加头疼,因为每次操作Bitmap
都会创建一个副本,而且我总是使用该Bitmap.recycle()
方法,OutOfMemory
一遍又一遍地杀死我。我正在寻找一种优雅且内存高效的方法来创建严格指定大小和方向的缩略图,使用从MediaStore
. 非常感谢任何帮助和参考。
问问题
360 次
1 回答
2
正如你所说,你已经使用了从种植到回收的所有东西,现在WeakReferences
也试试吧。
如果这也没有帮助,那么您的代码中可能存在内存泄漏。
请查看我对同一问题的回答:位图大小超出 Vm 预算错误 android
这是一个通用的答案,请尝试我提到的所有方法。其中一个应该适合你:)
谢谢你。
于 2012-09-28T10:19:04.853 回答