Процесс Android очень часто вызывает сообщение «скончался».

Я работаю над приложением, которое работает как служба и ждет сообщения. После проверки журнала я обнаружил, что Android убивает и перезапускает много процессов очень часто! Это происходит не только с моим приложением, но и для многих других сервисов.

Я не вижу причин для этого, и у моего устройства достаточно памяти. Я тестирую Sony Xperia S под управлением Android 4.0.4. Это нормально или ошибка?

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

02-04 15: 02: 38.791 320 332 I ActivityManager: Процесс com.android.email (pid 32763) умер. 02-04 15: 02: 38.791 320 332 W ActivityManager: Планирование перезапуска разбитого сервиса com.android.email/.service.MailService в 5000ms

.... и 13 минут спустя:

02-04 15:15:32.601 320 694 I ActivityManager: Process com.android.email (pid 1453) has died.

13
nl ja de
У вас на самом деле проблема с этим или просто интересно, почему он появляется в журнале так часто?
добавлено автор Jan Hudec, источник

1 ответы

Это нормально, ОС делает это регулярно.

Why? Every App or Service when inactive or in the background remains in memory until Android memory manager decides it is either taking up too much memory for nothing, or when another active app/service needs it. For example when you hit the home button when you are in your e-mail app. It will return to the exact place where you were when re-opening the app. Because this app was simply paused and in some sort of hibernation mode in the memory. Unless Android needs to allocate that memory for anything else, it keeps it there.

Способ убедиться, что ОС не убивает вашу службу, создает постоянную службу.

Вы можете сделать свою службу постоянной, если разрабатываете системные приложения. Эти службы будут в основном не подлежат уничтожению и будут помечены как «PERS» в выводе команды «Команда dbsys activity adb».

http://www.androidguys.com/ 2009/09/09/бриллианты являются-навсегда-услуги, являются не-/

Но:

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

10
добавлено
Это то, что O/S решает, когда это делать и почему. Опять же, все еще нормально. Я не знаю подробностей об этом. Если вы не используете системное приложение, вы не можете выполнять постоянный сервис. И вы должны использовать AlarmManager и IntentService. Таким образом, Android не убьет ваш сервис. Потому что на самом деле он используется в памяти.
добавлено автор Timmetje, источник
Тим. Если это приложение для чата, вам нужно, чтобы служба работала. Моя служба убивается часто и с очень большим временем - 3 м-9 м секунд
добавлено автор user2223032, источник
Привет, спасибо за ваш быстрый ответ! Я знаю об этом варианте, но я не разрабатываю системные приложения! Дело в том, почему я задаюсь вопросом о журнале, что я вижу на своих собственных файлах журналов, что мое приложение вчера было убито с 9:00 до 9 вечера только в 3 раза, но в эту ночь, когда мой телефон лежал на столе и подзаряжал он был убит 15 раз и в основном с задержкой в ​​несколько минут. Почему так часто в небе, где ничего не делать?
добавлено автор Aki, источник
Mobile Dev Jobs — вакансии и аналитика
Mobile Dev Jobs — вакансии и аналитика
6 187 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению iOS, Android, Xamarin и т.д. ВАЖНО: Правила публикации и правила канала: Ссылка – https://telegra.ph/Pravila-oformleniya-vakansij-i-rezyume-11-09-2

Android Developers
Android Developers
4 476 участник(ов)

Общаемся на темы, посвященным Android-разработке, SDK, Kotlin, Realm и т.д.

Android Architecture
Android Architecture
2 186 участник(ов)

Русскоязычный чат по архитектуре в андроид приложениях. Подробнее: http://telegra.ph/Android-Architecture-12-24

rus-speaking/android
rus-speaking/android
1 705 участник(ов)

Основной чат по Android разработке (вопрос-ответ). ПРАВИЛА: bit.ly/andr-rules. NEWS: bit.ly/AnrdResId ЧАТЫ: Основной: bit.ly/andr-main IDE, сборка, Git, сервисы: bit.ly/andr-tools Оффтоп: bit.ly/andr-offtop Конференции, события: bit.ly/andr-events Вакансии, найм: bit.ly/andr-job Архитектура: bit.ly/andr-patterns Rx: bit.ly/andr-rx Тестирование: bit.ly/andr-test Kotlin: bit.ly/andr-kotlin Хаmarin: bit.ly/andr-xamarin За мат, спам, агрессию, предложения о работе, оффтоп в этом канале - бан на сутки и более ☢☢☢

Android Dev Подкаст
Android Dev Подкаст
1 325 участник(ов)

Комната для обсуждения Android Dev подкаста apptractor.ru/AndroidDev/ Общее обсуждение Android: https://t.me/android_ru Остальные чаты про Android: http://t.me/devChats Наши новости https://t.me/androiddevpodcast_news

Android Guards
Android Guards
602 участник(ов)

Обсуждение любых вопросов касающихся безопасности Android. - Защита системы и приложений - Уязвимости и эксплойты - Вредоносное ПО - Копание в кишках системы и приложений (RE)

Android JOB
Android JOB
466 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению Android (full-time, part-time, remote и разовые подработки)

AndroidDev :: Разработка. It's Android time now!
AndroidDev :: Разработка. It's Android time now!
458 участник(ов)

It's Android time now! Чат разработчиков Android. Вакансии, резюме и информацию о митапах размещать можно. Публикацию скрытой и явной рекламы ваших каналов и сайтов после получения разрешения от @olegushakov

Aandroid Talks!
Aandroid Talks!
212 участник(ов)

Чат об общих вопросах по ОС Android. Чат для разработки под андроид - pro.android: https://t.me/joinchat/AAAAAEKIFKnmRT9cMebb9w

Android Rus
Android Rus
68 участник(ов)