При запуске приложения мне нужно проверить, есть ли у приложения разрешение на запись в хранилище устройства и разрешение на доступ к местоположению устройства.Если у вас нет приложения, запросите у пользователя эти разрешения.
Для этого я использую следующий код:
private boolean mayRequestLocations() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
return true;
}
if (checkSelfPermission(ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
return true;
}
if (!shouldShowRequestPermissionRationale(ACCESS_FINE_LOCATION)) {
requestPermissions(new String[]{ACCESS_FINE_LOCATION}, 0);
}
return false;
}
и
private boolean isStoragePermissionGranted() {
if (Build.VERSION.SDK_INT >= 23) {
if (checkSelfPermission(android.Manifest.permission.WRITE_EXTERNAL_STORAGE)
== PackageManager.PERMISSION_GRANTED) {
return true;
} else {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
return false;
}
} else {
return true;
}
}
Моя проблема в том, что яЯ хочу подождать, пока этот пользователь примет первое условие (или закрыть мое приложение), и после получения первого разрешения приложение перейдет к следующему шагу и попросит пользователя разрешить найти устройство.
Я считаю, что нужноAsyncTask, но не знаю, как это сделать.Любая помощь, пожалуйста?