2012-03-28 5 views
0

Привет У меня давно работает Android-приложение. Его для особой ситуации, когда нет интерактивного пользователя. Другие приложения не запускаются, потому что нет пользователя. Но я вижу основная деятельность моего приложения регулярно идет через жизненный цикл остановку, создание, резюме и т.д. Я написал файл журнал, как он побежал:Android - активность приложения остановлена, начата по неизвестной причине

 
2012.03.28 05:31 Main activity created 
2012.03.28 05:31 Main activity started 
2012.03.28 05:31 Main activity resumed 
2012.03.28 05:59 Main activity paused 
2012.03.28 05:59 Main activity created 
2012.03.28 05:59 Main activity started 
2012.03.28 05:59 Main activity resumed 
2012.03.28 05:59 Main activity stopped 
2012.03.28 06:12 Main activity paused 
2012.03.28 06:12 Main activity created 
2012.03.28 06:12 Main activity started 
2012.03.28 06:12 Main activity resumed 
2012.03.28 06:12 Main activity stopped 
2012.03.28 06:33 Main activity paused 
2012.03.28 06:33 Main activity created 
2012.03.28 06:33 Main activity started 
2012.03.28 06:33 Main activity resumed 
2012.03.28 06:33 Main activity stopped 
2012.03.28 08:08 Main activity paused 
2012.03.28 08:08 Main activity created 
2012.03.28 08:08 Main activity started 
2012.03.28 08:08 Main activity resumed 
2012.03.28 08:08 Main activity stopped 
... 

Кто-нибудь знает почему? Благодарю.

ответ

1

Android оставляет за собой право убить любое приложение или компонент, которые не видны пользователю (даже те, которые могут быть убиты, но это редкое явление). Чаще всего это связано с давлением памяти, и система убивает приложения для освобождения ресурсов.

Если у вас длительный процесс, который работает в фоновом режиме, и он должен работать непрерывно, лучше всего сделать его foreground service. Это приведет к тому, что услуга будет иметь более высокий приоритет, чем фоновая служба, и ее система должна прерываться меньше.

Однако, если ваша служба НЕ НАЙДЕЛАСЬ для запуска на переднем плане, вы должны реализовать свою услугу, чтобы изящно обращаться с тем, чтобы ее сносили и создавали системы, поскольку она обычно убивает службу по уважительной причине. Принуждение вашего обслуживания на передний план может увеличить риск повредить общую производительность устройства, и это заставляет присутствовать постоянное уведомление в панели уведомлений, что раздражает некоторых пользователей (по крайней мере, меня).

+0

Спасибо за ваш ответ Slothsberry. В этом случае это единственное приложение на устройстве. –

+0

Android может (и всегда будет, по моему опыту) по-прежнему убивать любое приложение. Я уверен, что вы можете взломать его, но, по моему опыту, не стоит бороться с ОС и дизайном структуры, но вместо этого адаптируйте свою реализацию. В конце концов, вы не можете переписать свой код так же легко, как вы могли бы написать свой. –

 Смежные вопросы

  • Нет связанных вопросов^_^