我正在使用基於此示例的媒體播放應用程序:How to design activity-service interaction for a simple mp3 player?從正在運行的服務請求數據的最佳方式是什麼?
它工作正常,但我不確定如何從按需服務請求數據。具體來說,我想用歌曲的位置更新進度條,以便服務能夠將該信息返回給客戶端活動。更新應該每秒發生一次。因爲它只是在需求(即只有當活動可見時)廣播可能不是解決方案。
因此,從目前爲止我所知道的,我可以使用Messenger或我可以綁定服務。
在給定的情況下,最合適的是什麼?更新頻率爲1秒?
增加:
據我所知,該服務將與活動停止時,它的約束。這當然不是我想要的音樂播放器。因此,我嘗試使用startService()來綁定服務併發送具有意圖的命令。這似乎工作正常,但這是一個明智的做法?我這樣做的原因是,服務在startService啓動後停止活動。
謝謝。我沒有想到在音樂播放器的來源。我已經更新了我的原始帖子,並提供了關於綁定服務的生命期的其他問題。 – marlar
我也更新了我的答案。 –
好的,現在已經越來越清晰了。仍然有一個問題:是不是這樣,如果說服務的活動暫停並最終被殺死,就像用戶將手機放在口袋裏並長時間收聽,那麼服務也會停止?或者這是我誤解的東西? – marlar