Не могу использовать GoToSleep APi PowerManager в Android - PullRequest
4 голосов
/ 06 июня 2011

Привет, я делал приложение, и мне нужно активировать телефон, чтобы перейти в режим экранной заставки, когда я получаю триггер ... Я оглянулся и обнаружил, что PowerManager.java предоставляет такой API " goToSleep "

Описание API здесь.

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

" android.Manifest.permission.DEVICE_POWER " это разрешение, являющееся разрешением 2-го уровня, просто объявив его в манифесте, не дает мне разрешения
так что теперь я должен запустить приложение в системном потоке (проверил, что оно работает, если я это сделаю), чтобы получить это разрешение успешно

кто-нибудь может дать мне какие-либо советы или каким-либо другим способом, как я могу сделать эту работу без рутирования моего приложения (есть ли другой способ вызвать такое же поведение

1 Ответ

0 голосов
/ 22 июня 2011

При определенном значении яркости экран отключается, поэтому это должно работать:

WindowManager.LayoutParams lp = getWindow (). GetAttributes ();
lp.flags | = LayoutParams.FLAG_KEEP_SCREEN_ON;
lp.screenBrightness = 0;
getWindow (). SetAttributes (lp);

...