Как предотвратить переход телефона в режим ожидания

Я разработал приложение, которое транслирует музыку (через интернет), используя сервис, и обеспечивает потоковую передачу контента без использования телефона.

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

Вариант использования: поиск песни, выбор песни из результатов, воспроизведение песни, отключение экрана -> автоматическое воспроизведение следующей песни из списка результатов

Я занимаюсь разработкой с использованием реального устройства - Huawei Mate 20 Lite - OS v8.01, поэтому при отладке нужно использовать USB-кабель. Как я уже сказал, в случае использования выше при подключенном USB автоматическое воспроизведение при отключенном экране работает хорошо. Случай, когда он не работает, когда кабель не подключен (включены только мобильные данные).

Я понял, что телефон, подключенный по USB, вероятно, держит устройство в активном состоянии, и он не переходит в режим ожидания, в то время как когда устройство не подключается примерно через 5 минут, устройство, вероятно, завершает процессы, которые требуют энергии, или отключает соединение с мобильные данные, я не уверен, и вот где вы мне нужны, ребята.

Также я протестировал приложение с использованием HTC U Play - OS v6.0, и потоковая передача идет без прерываний, когда экран выключен и телефон не трогали в течение 10+ минут.

Кроме того, я попытался приобрести wakelock внутри oncreate и не выпуская его, просто чтобы посмотреть, помогает ли это и нет.

pm = (PowerManager) getApplicationContext (). getSystemService (Context.POWER_SERVICE); wl = pm.newWakeLock (PowerManager.PARTIAL_WAKE_LOCK, "MyWakeLock"); wl.acquire ();

1 ответ

Решение

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

Если вы действительно думаете, что причина того, что приложение должно быть убитым, заключается в бездействии. Тогда, вероятно, из-за самого программного обеспечения оптимизации батареи.

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

Первоначально вы сможете выполнить ручные настройки, следуя приведенным ниже инструкциям.

, Выберите приложение "Настройки", а затем "Батарея".

, В меню "три точки" в правом верхнем углу вы найдете "Оптимизация батареи".

, Здесь вы увидите список всех приложений, которые не должны быть "оптимизированы" (для которых чтение "может обрабатываться Doze и App Standby") - по умолчанию список обычно очень мал, почти все приложения включены для " оптимизация. Это хорошо для обычных пользователей, но если, как и я, вы хотите, чтобы несколько приложений жили вне новых оптимизаций батареи, то нажмите на список выбора "Не оптимизировано" и выберите "Все приложения".

, Как и следовало ожидать, в списке есть все приложения на вашем телефоне (это может быть довольно долго) - проведите пальцем вниз, пока не найдете приложения, которые вы особенно хотите всегда запускать. Нажмите на название приложения

, Из двух вариантов установите флажок "Не оптимизировать".

Другие вопросы по тегам