У меня Huawei P8 с Android 5.0, который я использую для тестирования приложения. Приложение должно работать в фоновом режиме, так как оно отслеживает регионы BLE.
Я обнаружил, что Huawei встроила «функцию» под названием «Защищенные приложения», доступ к которой можно получить в настройках телефона («Диспетчер батареи»> «Защищенные приложения»). Это позволяет выбранным приложениям продолжать работу после выключения экрана.
Разумно для Huawei, но, к сожалению, для меня, похоже, что это опция, то есть приложения по умолчанию отключены, и вы должны вводить их вручную. Это не демонстрация, поскольку я могу посоветовать пользователям в FAQ или распечатанных документацию об исправлении, но я недавно установил Tinder (в исследовательских целях!) и заметил, что он был автоматически добавлен в список защищенных.
Кто-нибудь знает, как я могу это сделать для своего приложения? Это настройка в манифесте? Это что-то, что Huawei включила для Tinder, потому что это популярное приложение?
источник
Ответы:
источник
ComponentName("com.asus.mobilemanager","com.asus.mobilemanager.autostart.AutoStartActivity"));
sp.edit().putBoolean("protected",true).commit();
так как я понимаю, вот где вы меняете значение на защищенное право?В манифесте нет настройки, и Huawei включила Tinder, потому что это популярное приложение. Невозможно узнать, защищены ли приложения.
Во всяком случае я
ifHuaweiAlert()
в ,onCreate()
чтобы показатьAlertDialog
:источник
+1 для Пьера за его отличное решение, которое работает для нескольких производителей устройств (Huawei, asus, oppo ...).
Я хотел использовать его код в своем приложении для Android, написанном на Java. Я вдохновил свой код на ответы Пьера и Айуспактына .
}
Добавьте следующие разрешения в свой
Android.Manifest
Я надеюсь, что это поможет кому-то.
источник
Решение для всех устройств (Xamarin.Android)
Использование:
Добавьте следующие разрешения в свой
Android.Manifest
Чтобы найти активность устройства, не указанного здесь, просто используйте следующий метод, чтобы найти правильную активность, которую должен открыть пользователь.
C #
Ява
Выполнить при запуске и выполнить поиск в файле журнала, добавить фильтр logcat
TAG
дляbrand.activities
Пример вывода:
Итак, имя компонента будет:
Если у действия есть разрешение рядом с ним,
Android.Manifest
для открытия действия требуется следующая запись в :Прокомментируйте или отредактируйте новый компонент в этом ответе. Любая помощь будет мне очень признательна.
источник
Я использую решение @Aiuspaktyn, в котором отсутствует часть того, как определить, когда остановить отображение диалогового окна после того, как пользователь установил приложение как защищенное. Я использую службу, чтобы проверить, было ли приложение закрыто или нет, проверяя, существует ли оно.
источник
Вы можете использовать эту библиотеку для перехода пользователя к защищенным приложениям или автозапуска:
AutoStarter
Если телефон поддерживает функцию автозапуска, вы можете показать пользователю подсказку, чтобы включить ваше приложение в этих приложениях.
Вы можете проверить этим методом:
А для перехода пользователя на эту страницу просто вызовите это:
источник
PowerMaster -> Автозапуск -> Найдите свое приложение в заблокированном разделе и разрешите
источник