запретить переходу мобильного телефона в спящий режим во время работы приложения - PullRequest
7 голосов
/ 01 марта 2011

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

Пользователь должен перезапустить приложение.что делать?пожалуйста помогите

Ответы [ 3 ]

10 голосов
/ 01 марта 2011

Вам нужен WakeLock .Существуют различные виды замков, поэтому обязательно выберите наименее агрессивный, который соответствует вашим потребностям.В частности, это звучит так, как будто вам нужна частичная блокировка пробуждения .

частичная блокировка пробуждения - блокировка пробуждения, обеспечивающая работу процессора.Экран может быть не включен.

Кроме того, убедитесь, что вы добавили разрешение android.permission.WAKE_LOCK в свой манифест.И, наконец, удвойте уверенность, что отпустите ваш замок, когда вы закончите.

4 голосов
/ 01 марта 2011

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

Вам также понадобится разрешение WAKE_LOCK .

1 голос
/ 28 июля 2018

для JAVA: getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
для KOTLIN: window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
Используйте этот код, он будет держать ваше устройство включенным, и вам не нужнолюбое разрешение.

...