如何获取提供URI的位图,java.io.FileNotFoundException:没有内容提供者:/sdcard/Hello/1310610722879.jpg

时间:2011-07-14 02:44:30

标签: android bitmap android-contentprovider

我已经阅读了这样做的例子:

 protected void onActivityResult(int requestCode, int resultCode, Intent data)
 {
     super.onActivityResult(requestCode, resultCode, data);
     if (resultCode == RESULT_OK)
     {
         Uri imageUri = data.getData();
         Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(),              imageUri);
     }
 }

但是我得到了java.io.FileNotFoundException:没有内容提供者:/sdcard/Hello/1310610722879.jpg

我的代码在这里:

Uri uri1 = Uri.parse(Config.getPhotoPath(this));                
try {
    Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), uri1);
    attachButton.setImageBitmap(bitmap);
} catch (Exception e) {
    // TODO: handle exception
    e.printStackTrace();
}

任何想法如何使其发挥作用?

好的,我搞砸了,你必须这样做:

Uri uri1 = Uri.parse("file://" + Config.getPhotoPath(this));

2 个答案:

答案 0 :(得分:22)

好的,我搞砸了,你必须这样做:

Uri uri1 = Uri.parse("file://" + Config.getPhotoPath(this));

答案 1 :(得分:6)

或者你可以做到

File file = new file(Config.getPhotoPath(this));
Uri uri1 = Uri.fromFile(file);