Android: лучше ли запускать и останавливать службу каждый раз, когда она необходима, или позволить службе запускаться, связываться и развязываться с ней? - PullRequest
8 голосов
/ 30 марта 2010

Я разрабатываю приложение, которое проверяет несколько условий во время входящего телефонного звонка. Основными частями приложения являются BroadcastReceiver, прослушивающий Контенты, связанные с состоянием телефона, и локальная Служба, проверяющая условия.

В данный момент служба запускается каждый раз, когда обнаруживается входящий вызов, и останавливается, когда статус телефона возвращается в режим ожидания.

Теперь мне интересно, правильна ли эта процедура и целесообразно ли запускать и останавливать службу, связанную со статусом телефона. Или было бы лучше, чтобы служба работала независимо от состояния телефона и при необходимости связывала / отстегивала от него.

Есть ли какие-либо проблемы с производительностью, о которых мне следует подумать? Возможно, запускать / останавливать службу дороже, чем запускать ее и общаться с ней. Существуют ли передовые практики по внедрению услуг?

1 Ответ

5 голосов
/ 30 марта 2010

Или лучше было бы служба работает независимо от телефона статус и связать / отменить, когда необходимо.

Пожалуйста, не надо. Это просто займет оперативную память без веской причины. Это такие вечные сервисы, которые заставляют пользователей атаковать разработчиков убийцами задач.

Есть ли лучшие практики там? относительно реализации услуги?

Здесь это два моих постов на эту тему, для чего они стоят.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...