The video helped a lot , as I could not find examples.
In short: create a variable
private final int MY_PERMISSIONS_REQUEST_CODE = 1;
create an overloaded method
@Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { if (requestCode != MY_PERMISSIONS_REQUEST_CODE) { return; } boolean isGranted = true; for (int result : grantResults) { if (result != PackageManager.PERMISSION_GRANTED) { isGranted = false; break; } } if (isGranted) { Toast.makeText(MainActivity.this, "Разрешения получены", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(this, "В разрешениях отказано", Toast.LENGTH_LONG).show(); } }
we create function of check of permissions
private boolean checkPermissions() { if (ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { return false; } return true; }
permission setting function
private void setPermissions() { ActivityCompat.requestPermissions(this, new String[]{ Manifest.permission.WRITE_EXTERNAL_STORAGE}, MY_PERMISSIONS_REQUEST_CODE); }
and in the code we call check
if (checkPermissions()) { Toast.makeText(MainActivity.this, "Разрешения уже получены", Toast.LENGTH_SHORT).show(); } else { setPermissions(); }