Устройства Xiaomi Android - правильно запрашивать разрешения для фоновых локаций - PullRequest
1 голос
/ 20 марта 2019

Мы разрабатываем приложение, для которого требуется несколько разрешений, чтобы получить местоположение пользователя в фоновом режиме.

У нас возникают проблемы при запросе необходимых разрешений на устройствах Xiaomi.Похоже, что в дополнение к разрешению местоположения и белому списку приложения из оптимизации батареи, требуется два дополнительных шага, специфичных для устройств Xiaomi:

  1. Отключение функции экономии батареи:

enter image description here

Включение автозапуска:

enter image description here

Проблема в том, что мы не нашли способа автоматически запрашивать разрешение у пользователя, и толькомы нашли способ заставить пользователя вручную переходить на эти экраны и изменять настройки.

Мы нашли ярлыки, которые ведут нас «на полпути».

  1. Переход к настройкам питания:

Intent intent = new Intent ("miui.intent.action.POWER_HIDE_MODE_APP_LIST"). AddCategory (Intent.CATEGORY_DEFAULT);

Переход к настройкам автоматического запуска:

Intent intent = new Intent ("miui.intent.action.OP_AUTO_START"). AddCategory (Intent.CATEGORY_DEFAULT);

Но от пользователя все еще требуются многочисленные неинтуитивные действия.

Наша цель:

  1. Мы бы очень хотели упростить процесс для пользователя.Оптимально, чтобы появилось системное диалоговое окно, которое запрашивает у пользователя разрешения, а не заставляет его вручную изменять настройки, подобно белому списку обычных устройств Android:

enter image description here

Возможно ли использовать расширение SDK для Xiaomi?

Если (1) невозможно, по крайней мере нам нужен способ узнать, изменяет ли пользователь эти настройки или нет.В настоящее время мы не знаем и не можем сообщить пользователю, правильно ли работает приложение!

Заранее спасибо,

Тал

...