This is only required for 'dangerous permission'.
Check this link for the list of permissions:
https://developer.android.com/guide/topics/permissions/requesting.html#normal-dangerous
For storage permission:
Code: Select all
import android.os.Build;
private boolean isStoragePermissionGranted() {
if (Build.VERSION.SDK_INT >= 23) {
if (ContextCompat.checkSelfPermission(context, android.Manifest.permission.WRITE_EXTERNAL_STORAGE)
== PackageManager.PERMISSION_GRANTED) {
return true;
} else {
ActivityCompat.requestPermissions( mMainActivity, new String[] {
android.Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
return false;
}
}
else { //permission is automatically granted on sdk<23 upon installation
Log.d(TAG,"permission is granted on sdk<23 ");
return true;
}
}
Code: Select all
// do I need and have the permission ?
if (isStoragePermissionGranted()) {
Log.v(TAG,"Storage write allowed");
} else {
Log.w(TAG,"Storage write not allowed");
Toast.makeText(context, "You didn't allow writing to the media", Toast.LENGTH_LONG).show();
return;
}
See:
https://developer.android.com/training/permissions/requesting.html