【发布时间】:2014-08-20 15:28:31
【问题描述】:
我正在尝试使用 MediaStore.Images.Media.DATA 读取 SD 卡中存在的照片,但我总是得到一个空光标! 这是我用来阅读的代码:
final String[] columns = { MediaStore.Images.Media.DATA,
MediaStore.Images.Media._ID };
Cursor imagecursor = getContentResolver()
.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, columns,
MediaStore.Images.Media.DATA + " like ? ",
new String[] { "%"+eventName.trim()+"%" }, null);
imagecursor.setNotificationUri(getContentResolver(),
MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
this.imageUrls = new ArrayList<String>();
Log.i("imagecursor.getCount()", Integer.toString(imagecursor.getCount()));
for (int i = 0; i < imagecursor.getCount(); i++) {
imagecursor.moveToPosition(i);
int dataColumnIndex = imagecursor.getColumnIndex(MediaStore.Images.Media.DATA);
imageUrls.add(imagecursor.getString(dataColumnIndex));
}
我当然添加了这个
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
到 AndroidManifest.xml
【问题讨论】:
标签: android cursor sd-card mediastore