権限が次の方法で付与されているかどうかを確認してみてください。
checkCallingOrSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE);
を使用して、このようにランタイムでパーミッションをリクエストしてみてくださいrequestPermissions()
。
int EXT_PERMISSION = 1;
requestPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, 0);
そして、付与されたアクセス許可の結果を処理します
@Override
public void onRequestPermissionsResult(int requestCode,
String permissions[], int[] grantResults) {
switch (requestCode) {
case EXT_PERMISSION: {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
//permission granted
} else {
//permission denied
}
break;
}
}
}