Трансляция действия по изменению разрешения в android M

Делает ли приложение какой-либо широковещательный или какой-либо сигнал, когда его настройки разрешения изменены из «Настройки»? У меня есть сценарий, когда мы запускаем какой-то журнал, когда приложение запускается и имеет разрешения LOCATION GROUP. Но когда пользователь отменяет это разрешение между нашими приложениями, происходит сбой. Не найти способ остановить ведение журнала, когда пользователь отменяет его. Это ведение журнала происходит из сторонней библиотеки, поэтому мы не можем устанавливать проверку на проверку прав между ними.

Делает ли приложение какой-либо широковещательный или какой-либо сигнал, когда его настройки разрешения изменены из «Настройки»?

Это не документировано.

Если пользователь отменяет ранее предоставленное вам разрешение, ваш процесс будет прекращен. Когда вы в следующий раз запустите, вы узнаете об изменении разрешения как части проверки разрешений.

Если пользователь предоставляет разрешение, которое ранее было отклонено, ваш процесс не прекращается. Однако еще раз, когда вы вызываете checkSelfPermission() , вы обнаружите, что у вас есть доступ.

Урок здесь: не кэшируйте результаты поиска разрешений. Они кажутся довольно дешевыми звонками, поэтому просто вызовите checkSelfPermission() мере необходимости.

Если ваш targetSdkVersion меньше 23, checkSelfPermission() не поможет, но вы должны получать фиктивные данные, а не SecurityException . В случае исправлений местоположения вы не должны получать какие-либо местоположения, если пользователь отменил ваши разрешения доступа к местоположению.

Но когда пользователь отменяет это разрешение между нашими приложениями

Я не пробовал сценарий, в котором работает фоновый сервис, и пользователь отменяет разрешение. Это должно прекратить ваш процесс, и поэтому вы узнаете об изменении разрешения, когда ваш сервис будет запущен в следующий раз. Если вы обнаружите, что ваш процесс не прерывается, это может быть признаком ошибки в Android.

Intereting Posts
Как я могу создать базу данных Realm с исходными данными для моего приложения для Android? В Android SQLite db как сопоставить определенные значения столбцов, которые имеют одинаковые идентификаторы в нескольких таблицах базы данных? Как показать изображение профиля facebook на Android-навигаторе? Событие ViewPager onPageScrolled не вызвано Выделите кнопку, когда она нажата, без использования двух вытягиваемых? В настройках Android можно защитить от «соответствующей операции» Центрирование текстового изображения Ниже кнопки изображения, которая находится под относительным расположением? RecyclerView.Adapter получить позицию позиции в моем списке Почему он говорит «устарело» для метода, когда его единственный, который я могу использовать для выбранного уровня API? Android Bitmap Masking (Xfermode) оставляет непрозрачный черный фон позади Вложенное RecyclerView. Как предотвратить прокрутку родительского RecyclerView во время прокрутки дочернего элемента RecyclerView? Распознавание голоса на Android с записанным звуковым клипом? Распознавание речи на Unity Game Engine Отобразить изображение реплики с зеркальным отображением в android В чем разница между инструментами платформы и инструментами SDK в разработке Android?