Алгоритм действий приложения после запроса разрешений
Перед использованием приложения, необходимо сделать запрос разрешений. Не могу определить момент когда все попытки закончились и вместо запроса разрешений необходимо показать стандартное окно системных настроек приложения.
Переменные: boolean isDenied - разрешение отсутствует boolean isShouldShow - необходимо предоставить пользователю разъяснение зачем нужно разрешение.
| isDenied | isShouldShow | Что нужно сделать | Результат запроса |
|---|---|---|---|
| true | false | запрос разрешения | запрет |
| true | true | объяснение и снова запрос разрешения | снова запрет |
| true | false | открыть системные настройки приложения |
Не могу идентифицировать последний пункт. Пробовал определить, что был выполнен первый запрос, но не получилось, потому что если ничего в запросе не нажимать, а просто отменить операцию кнопкой "назад", то isShouldShow не становится true.