2015-03-09 6 views
0

Я работаю над приложением Music Player, и я инициализировал экземпляр MediaPlayer в службе. Я реализовал OnCompletionListener на экземпляре MediaPlayer. Я ищу способ уведомлять свою деятельность о том, что дорожка закончила воспроизведение. Мне нужно это для обновления TextView в моей деятельности, которая печатает имя текущей дорожки.Как передать данные из службы в действие в android

+0

Вы можете использовать 'IBinder' для него. Вы также можете использовать 'Handler' для него с' Messanger'. – Piyush

+0

Используйте обработчик. Попробуйте EventBus создать greenrobots. https://github.com/greenrobot/EventBus – Raghunandan

ответ

0

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

Этот метод требует использования объекта ServiceConnection в качестве параметра, который вызывается при запуске службы и при завершении метода onBind(). Этот метод возвращает объект IBinder в ServiceConnection.

Этот объект IBinder может использоваться для взаимодействия с услугой.

Когда процесс связывания завершен, метод onStartCommand() в службе вызывается с объектом Intent, используемым для метода bindService().

Дальнейшая информация: http://www.vogella.com/tutorials/AndroidServices/article.html#service_activitybinding

и

bind/unbind service example (android)

+0

благодарит @Franze. Я решил его использовать Broadcast Receiver. –

Смежные вопросы