uniform method names for permission requests

This commit is contained in:
dkanada 2021-04-26 12:17:08 +09:00
commit e56a20f34c
2 changed files with 13 additions and 13 deletions

View file

@ -36,8 +36,8 @@ public abstract class AbsBaseActivity extends AbsThemeActivity {
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
permissions = getPermissionsToRequest(); permissions = getPermissionRequest();
allowed = hasPermissions(); allowed = checkPermissions();
} }
@Override @Override
@ -59,13 +59,13 @@ public abstract class AbsBaseActivity extends AbsThemeActivity {
new Handler().postDelayed(builder::show, 2000); new Handler().postDelayed(builder::show, 2000);
} else if (permissions.size() != 0 && ActivityCompat.shouldShowRequestPermissionRationale(this, permissions.get(0))) { } else if (permissions.size() != 0 && ActivityCompat.shouldShowRequestPermissionRationale(this, permissions.get(0))) {
builder.setMessage(getPermissionDeniedMessage()) builder.setMessage(getPermissionMessage())
.setTitle(R.string.permissions_denied) .setTitle(R.string.permissions_denied)
.setPositiveButton(R.string.action_grant, (dialog, id) -> requestPermissions()); .setPositiveButton(R.string.action_grant, (dialog, id) -> requestPermissions());
new Handler().postDelayed(builder::show, 2000); new Handler().postDelayed(builder::show, 2000);
} else if (!hasPermissions()) { } else if (!checkPermissions()) {
builder.setMessage(getPermissionDeniedMessage()) builder.setMessage(getPermissionMessage())
.setTitle(R.string.permissions_denied) .setTitle(R.string.permissions_denied)
.setPositiveButton(R.string.action_settings, (dialog, id) -> NavigationUtil.openSettings(this)); .setPositiveButton(R.string.action_settings, (dialog, id) -> NavigationUtil.openSettings(this));
@ -78,7 +78,7 @@ public abstract class AbsBaseActivity extends AbsThemeActivity {
protected void onResume() { protected void onResume() {
super.onResume(); super.onResume();
if (hasPermissions() != allowed) { if (checkPermissions() != allowed) {
super.recreate(); super.recreate();
} }
} }
@ -87,16 +87,16 @@ public abstract class AbsBaseActivity extends AbsThemeActivity {
return getWindow().getDecorView(); return getWindow().getDecorView();
} }
protected List<String> getPermissionsToRequest() { protected List<String> getPermissionRequest() {
return new ArrayList<>(); return new ArrayList<>();
} }
protected String getPermissionDeniedMessage() { protected String getPermissionMessage() {
return getString(R.string.permissions_denied); return getString(R.string.permissions_denied);
} }
private void showWarning() { private void showWarning() {
Snackbar.make(getPermissionWindow(), getPermissionDeniedMessage(), Snackbar.LENGTH_SHORT) Snackbar.make(getPermissionWindow(), getPermissionMessage(), Snackbar.LENGTH_SHORT)
.setAction(R.string.ignore, view -> { }) .setAction(R.string.ignore, view -> { })
.setActionTextColor(ThemeStore.accentColor(this)) .setActionTextColor(ThemeStore.accentColor(this))
.show(); .show();
@ -121,12 +121,12 @@ public abstract class AbsBaseActivity extends AbsThemeActivity {
} }
@RequiresApi(api = Build.VERSION_CODES.M) @RequiresApi(api = Build.VERSION_CODES.M)
protected void requestPermissions() { private void requestPermissions() {
requestPermissions(permissions.toArray(new String[0]), PERMISSION_REQUEST); requestPermissions(permissions.toArray(new String[0]), PERMISSION_REQUEST);
} }
@RequiresApi(api = Build.VERSION_CODES.M) @RequiresApi(api = Build.VERSION_CODES.M)
protected boolean hasPermissions() { private boolean checkPermissions() {
for (String permission : permissions) { for (String permission : permissions) {
if (checkSelfPermission(permission) != PackageManager.PERMISSION_GRANTED) { if (checkSelfPermission(permission) != PackageManager.PERMISSION_GRANTED) {
return false; return false;

View file

@ -192,12 +192,12 @@ public abstract class AbsMusicServiceActivity extends AbsBaseActivity implements
} }
@Override @Override
protected String getPermissionDeniedMessage() { protected String getPermissionMessage() {
return getString(R.string.permission_external_storage_denied); return getString(R.string.permission_external_storage_denied);
} }
@Override @Override
protected List<String> getPermissionsToRequest() { protected List<String> getPermissionRequest() {
return Arrays.asList(Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE); return Arrays.asList(Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE);
} }
} }