1
Я использую следующее, чтобы открыть хранилище и установить фон ImageButton.Настройка фона ImageButton, считывая хранилище в android
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data)
{
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
//String[] filePathColumn = {Environment.DIRECTORY_PICTURES};
Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
imgLogo.setImageBitmap(BitmapFactory.decodeFile(picturePath));
}
Но даже если в существуют явные разрешения я наклоняю установить фон IMAGEBUTTON
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
и я получаю ... требует android.permission.READ_EXTERNAL_STORAGE или grantUriPermission()