Страницы

Поиск по вопросам

пятница, 12 июля 2019 г.

Фоновый режим работы приложения android

У меня написан SIP-клиент, который совершает и принимает вызовы. Однако, при сворачивании приложения оно может выгрузиться из памяти и принимать вызовы соответственно не будет. Как реализовать приложение аналогично скайпу (до недавнего времени), когда по запуску он появляется в строке состояния и работает до тех пор, пока не нажата кнопка выхода? Наверняка существует статья на эту тему, но мои поиски не увенчались успехом.


Ответ

Судя по вашим путаным показаниям речь идет о 3-х разных компонентах приложения: Notification - компонента отвечающая за появление значка в строке состояния Service - некая долгоживущая компонента, в принципе можно сделать ее и невыгружаемой. BroadcastReceiver - компонента отвечающая за перехват входящих звонков. Чтобы сделать ее "невыгружаемой", ее надо декларировать в манифесте с флагом exported=true Композиционно делаем так: Выставляем нотификацию, так чтобы при клике на нее стартовалась Activity вашего приложения Вешаем BroadcastReceiver настроенный на фильтрацию входящих/исходящих SIP звонков. При перехвате звонка - BroadcastReceiver поднимет нужную Activity Бизнес-логику приложения, которая должна быть всегда под рукой размещаем в Service, так чтобы из Activity можно было обратиться к Service P.S. ИМХО можно обойтись и без Service - но на вкус и цвет...

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

Отправить комментарий