Android 空光标查询MediaStore.Images.Media
我尝试使用contentResolver获取包含MediaStore.images.Media提供的所有图像的光标,但光标为空!(我在我的手机上尝试了很多图片)。代码是: 公共类MainActivity扩展了ActionBarActivity{Android 空光标查询MediaStore.Images.Media,android,Android,我尝试使用contentResolver获取包含MediaStore.images.Media提供的所有图像的光标,但光标为空!(我在我的手机上尝试了很多图片)。代码是: 公共类MainActivity扩展了ActionBarActivity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.lay
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button buttonLoadImage = (Button) findViewById(R.id.buttonLoadPicture);
buttonLoadImage.setOnClickListener(new View.OnClickListener() {
@SuppressLint("NewApi")
@Override
public void onClick(View arg0) {
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(MediaStore.Images.Media.INTERNAL_CONTENT_URI, filePathColumn, null,null,null);
if(cursor.moveToFirst()==false) Log.i("my message","EMPTY");
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
ImageView imageView = (ImageView) findViewById(R.id.imgView);
imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));
}
});
}
您知道如何至少拥有一个非空光标吗?非常感谢使用
外部内容URI
而不是内部内容URI
Uri uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, filePathColumn , null, null, null);
然后你会有一个包含所有文件路径(MediaStore.Images.Media.DATA)的游标。尝试了外部内容URI?它是用于SD卡的,不是手机内存中的图像,对吗?但是外部内容URI不会在手机内存中给我图像,不是吗?外部是关于SD卡的,例如我想。。。