Android Какие разрешения требуются для вызова PowerManager.goToSleep(n), чтобы перевести устройство в спящий режим?
Уже установлен android.permissions.DEVICE_POWER в манифесте моего приложения. Все еще жалуется, что ни пользователь, ни процесс не имеют такого разрешения, когда я вызываю PowerManager.gotoSleep(n) в рамках действия. Какие другие настройки необходимы для этой работы? Спасибо Это на моем телефоне Samsung ATT
3 ответа
DEVICE_POWER - это разрешение уровня 2 и защищенное разрешение, и, следовательно, оно не предоставляется ни одному приложению, запрашивающему его через манифест, для успешного получения этого разрешения нам необходимо иметь сертификат Platform в нашем файле make и общий идентификатор пользователя, заданный в manifest как system..,
LOCAL_CERTIFICATE := platform (makefile entry)
android.uid.system (shared user id )
Там нет пути вокруг этого, я посмотрел вокруг, не нашел...
В старой версии я читал, что это защищенное подписью разрешение, то есть разрешено только приложениям, подписанным как системные приложения.
java -jar signapk.jar platform.x509.pem platform.pk8 bin/TestApp-unsigned.apk bin/TestApp.apk
У меня была точно такая же проблема, и это сработало для меня. Получите файл signapk.jar по https://github.com/appium/sign. репозиторий также включает в себя тестовый сертификат Android, который работает, например, с корневым уголком.