Android不会在缓存中保存缩略图

时间:2013-07-18 19:29:52

标签: android

我注意到android管理缩略图的不同行为。 这是我的代码:

String[] sProjection = new String[]{MediaStore.Images.Media.BUCKET_DISPLAY_NAME,
MediaStore.Images.Media.DISPLAY_NAME,MediaStore.Images.Media.DATA,
MediaStore.Images.Media._ID};

Cursor oCur = oActivity.getContentResolver().query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
    sProjection,"",null,MediaStore.Images.Media.BUCKET_DISPLAY_NAME);

do{

...

Bitmap oBmp = MediaStore.Images.Thumbnails.getThumbnail(oActivity.getContentResolver(),bmpID,
MediaStore.Images.Thumbnails.MICRO_KIND,null);

...

}while (oCur.moveToNext());

然后在加载所有缩略图之后,我会对其中的一些进行详细说明。

使用我的手机(Android 4.1.2)首次加载所有缩略图后(例如使用新照片或在媒体存储中清理缓存后),“do while”循环非常快,因为已经创建了所有tumbanails并保存在缓存中。

每次执行循环时都有另一个(相同的Android版本),没有速度的改进,因为它不会保存它们但会重新计算它们(使用Eclipse LogCat中的消息查看)。

为什么会这样?!有没有办法解决这个问题,并强制Android保存缩略图在缓存中?

非常感谢您的帮助,非常感谢任何建议。

0 个答案:

没有答案