Android: проверьте, работает ли служба через. bindService

Каким будет лучший способ проверить, запущена ли служба Android? Я известно об API ActivityManager , но похоже, что использование API не рекомендуется для сценариев, подобных моему ( источник ). Я также знаю о возможности использования глобального / постоянные переменные для поддержания состояния службы.

Я пытался использовать bindService с флагами, установленными на 0 , но у меня возникли те же проблемы, что и у человека на ссылка на источник (единственное исключение было, я пробовал использовать bindService с локальной службой).

Следующий вызов

getApplicationContext().bindService(new Intent(getApplicationContext(),
        MyService.class), mServiceConnection, 0);

всегда возвращает истину, но не подключается. Это ожидаемое поведение? Мне кажется, что bindService должен возвращать false, если служба еще не запущена (это не так, я это проверил) или если флаг BIND_AUTO_CREATE не установлен (опять же, это нет).

20
задан Jared Rummler 19 October 2015 в 13:47
поделиться