Сервис

Android #Android

</h1

Компонент Service может незаметно выполняться в фоновом режиме без прямого взаимодействия с пользователем. Обычно он используется для частичного снятия чрезмерной нагрузки с других компонентов, когда длительность операций превосходят длительность их существования. Компонент Service может работать в двух режимах: в режиме **запускаемой службы (started)**и в режиме подключаемой службы (bound):

  • в режиме запускаемой службы - компонент сервисе запускается вызовом метода Context.startService(Intent), с явным или неявным объектом Intent, и завершается вызовом метода Context.stopService(Intent);

  • в режиме подключаемой службы - несколько компонентов могут подключаться к компоненту Service, вызвав метод Context.bindService(Intent, ServiceConnection, int) и передав ему явный или неявный объект Intent. После подключения компонент может взаимодействовать с Service через интерфейс ServiceConnection и в любой момент разорвать установленную связь вызовом метода Context.unbindService(ServiceConnection). Компонент Service автоматически удаляется, когда последний компонент разорвёт связь с ним.

  • Это компонент приложения

  • Его нужно прописывать в манифесте

  • Позволяет приложению осуществлять действия без взаимодействия с пользователем, в т.ч. в фоне

  • Сервис по умолчанию запускается в основном потоке хост процесса (того кто его породил)

  • Сервис ЭТО НЕ ПРОЦЕСС он запускается в рамках процесса хоста (есть исключения)

  • Сервис ЭТО НЕ ПОТОК он не создаёт отдельный поток

Типы сервисов

  • Started (запущенные) - сервисы, которые запускаются любым другим компонентом приложения и работают пока не остановят сами себя или кто-то не остановит их.
  • Bound (связанные) - сервис, который выступает в роли сервера в клиент-серверной архитектуре. Такой сервис при первом соединении (запросе) от другого компоента приложения. Сервис останавливается, когда отсоединится последний клиент.
  • Сервис может быть одновременно и Started и Bounded. Такой сервис способен "жить вечно" и обслуживать запросы клиентов.

Далее

Вернуться

Оценка статьи 0

Комментарии

Пока комментариев нет.