Если служба Android не является потоком, почему в ней говорится, что она работает на заднем плане?

#android #multithreading #process

Вопрос:

Я нашел это объяснение в основных официальных документах Android.

Служба-это точка входа общего назначения для поддержания работы приложения в фоновом режиме по всевозможным причинам.

https://developer.android.com/guide/components/fundamentals

а также на другой странице говорится, что

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

Служба — это не поток. Это не само по себе средство для выполнения работы в основном потоке (чтобы избежать ошибок, связанных с тем, что приложение не отвечает).

https://developer.android.com/reference/android/app/Service#WhatIsAService

Мне трудно это понять. Потому что работа в фоновом режиме означает, что для меня это будет либо другой процесс, либо другой поток.

Я предполагаю, что это глупый вопрос, но любой, кто обладает глубокими знаниями об среде Android, объяснит мне, как будто мне пять лет?

Комментарии:

1. Проще говоря, приложения могут работать либо на переднем плане, когда у них есть открытая активность (пользовательский интерфейс, занимающий экран), либо в фоновом режиме, когда активности нет (но само приложение еще не остановлено). Все методы жизненного цикла и обратные вызовы службы по-прежнему выполняются в основном цикле приложений (тот же поток, который обрабатывает действия). Однако в последних версиях Android появилась оптимизация батареи и ограничения на фоновое выполнение, поэтому «фоновые службы» необходимо запускать как «службы переднего плана» (которые привязаны к уведомлению), иначе они будут отключены вскоре после закрытия приложений.