Я использую устройство Android. Когда я открываю “Настройки”> “Приложения”> “Выполнение”, в верхнем левом углу экрана появляется опция: (1) Запуск процессов (2) Кэширование фоновых процессов. А приложения, которые я хотел запускать всегда (24 × 7), к сожалению, перечислены в (2) Кэшированные фоновые процессы, которые я хотел, чтобы они/они были перечислены в (1) Запуск процессов (если это возможно)). Это можно сделать? Или вкратце, как сделать приложение для Android, чтобы оно всегда работало в фоновом режиме?
Я надеюсь, что передал вопрос
Лучший ответ:
Вы должны запустить службу в своем классе Application, чтобы запустить ее всегда. Если вы это сделаете, ваш сервис будет работать всегда. Даже если пользователь завершит работу вашего приложения из диспетчера задач или принудительно остановит ваше приложение, оно снова запустится.
Создайте класс Application и запустите свой сервис:
Добавьте атрибут “name” в тег “application” вашего AndroidManifest.xml
ЧТО БУДЕТ | 07.07.2023
android_name=».App»
Также не забудьте добавить свой сервис в тег “application” вашего AndroidManifest.xml
А также этот запрос на разрешение в теге “manifest” (если уровень API 28 или выше):
ОБНОВИТЬ
После Android Oreo Google ввел некоторые фоновые ограничения. Таким образом, это решение выше не будет работать, вероятно. Когда пользователь убивает ваше приложение из диспетчера задач, система Android также уничтожает ваш сервис. Если вы хотите запустить службу, которая всегда работает в фоновом режиме. Вы должны запустить службу переднего плана с отображением текущего уведомления.
Итак, отредактируйте свой сервис, как показано ниже.
На некоторых мобильных телефонах, таких как my (MIUI Redmi 3), вы можете просто добавить конкретное приложение в список, где приложение не останавливается, когда вы завершаете приложения в диспетчере задач (он остановится, но он начнется снова).
Просто зайдите в “Настройки” > “РазрешенияAutostart”
Вы можете попробовать создать сервис. Вот официальная документация для этого: Ссылка
Ну… Пользователь с другой стороны. Как обеспечить, чтобы данное приложение НИКОГДА не работало в фоновом режиме и всегда убивалось после того, как оно перестало быть на переднем плане? У меня более 400 приложений, каждое из которых пытается работать в фоновом режиме, потребляет драгоценную память, загружает и загружает неизвестные данные, нагревает мой процессор и разряжает батарею. На самом деле, может быть, есть 20 приложений, которые мне действительно нужно запускать в фоновом режиме (телефон, сервисы Google, Gmail, zygote, дома, некоторые приложения для автоматизации). Другими словами: подумайте дважды, действительно ли вам нужно, чтобы приложение всегда работало.
Источник: techarks.ru
Как оставлять приложение всегда активным в Android?
Поставил на смартфон+android несколько приложений месенджеров (skype, whatsup, telegram) и 2 разных будильника. Когда приложение активно (открыто на основном дисплее) — оно работает стабильно, если зайти в другое приложение оставив первое приложение на ‘втором фоне’ (не закрывая его), то второе приложение через пару часов нахождения в подобном «фоне» перестает работать (не принимает сообщений для мессенжеров и не звонит будильник).
Git для начинающих Android, Kotlin, Java разработчиков Groovy, Scala Pull Request Merge Commit Push
Учитывая, что такое «засыпание» приложений начинается не сразу, а спустя пару часов, то это наводит на определенные мысли, что какой то процесс их принудительно завершает.
Как быть?
UPD: android 6.0.1, чистый.
- Вопрос задан более трёх лет назад
- 4012 просмотров
4 комментария
Простой 4 комментария
Источник: qna.habr.com