Android:加载图片 - >开放失败:EACCES

时间:2015-12-09 11:13:01

标签: android android-intent android-image

Android 6.0 - Marshmallow

我只是想打开画廊并选择一张图片,但我有错误:

E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/Download/my_image-1.png: open failed: EACCES (Permission denied)

以下是清单中的权限声明:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

这是我的图片选择器:

((Button)view.findViewById(R.id.button_Logo)).setOnClickListener(new View.OnClickListener(){
  @Override
  public void OnClick(View v) {
   Intent getIntent = new Intent(Intent.ACTION_GETCONTENT);
   getIntent.setType("image/*");
   Intent pickIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
   pickIntent.setType("image/*");
   Intent chooserIntent = Intent.createChooser(getInten, "Select Image");
   chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[]{pickIntent});
   startActivityForResult(chooseIntent, PICK_IMAGE);
  }
});

3 个答案:

答案 0 :(得分:1)

对于API 23+,您需要请求读/写权限,即使它们已经在您的清单中。

MVVM

}

答案 1 :(得分:0)

在清单

中添加以下两项权限
  

android.permission.WRITE_EXTERNAL_STORAGE   android.permission.READ_EXTERNAL_STORAGE

答案 2 :(得分:0)

好的,请删除此行&#34; getintent.setType(images / *)&#34;从你的意图。 并制定一个这样的意图......

$('#formid').on('submit', function(e) { if(grecaptcha.getResponse() == "") { e.preventDefault(); alert("You Must Complete The CAPTCHA Form!"); } else { alert("Complete!"); } });