Разрешения Android M: запутано при использовании функции shouldShowRequestPermissionRationale ()

Я просматривал официальный документ о новой модели разрешений в Android M. Он говорит оshouldShowRequestPermissionRationale() функция, которая возвращаетtrue если приложение запросило это разрешение ранее, а пользователь отклонил запрос. Если пользователь отклонил запрос на разрешение в прошлом и выбрал опцию «Больше не спрашивать», этот метод возвращаетfalse.

Но как мы можем различить следующие два случая?

Случай 1: Приложение не имеет разрешения, и пользователь не запрашивал разрешение раньше. В этом случае shouldShowRequestPermissionRationale () вернет false, потому что это первый раз, когда мы спрашиваем пользователя.

Дело 2: Пользователь отказал в разрешении и выбрал «Больше не спрашивать», в этом случае также shouldShowRequestPermissionRationale () вернет false.

Я хотел бы отправить пользователя на страницу настроек приложения в случае 2. Как мне провести различие между этими двумя случаями?

Ответы на вопрос(11)

Ваш ответ на вопрос