2016-07-06 146 views
0

我創建簡單的音樂播放,但我想在後臺玩的話,我不知道如果我的解決辦法是正確的:服務+活動播放音樂

  • 服務(用於播放音樂)
  • 活動與片段(用於控制)

但是,當它很容易播放/停止/暫停(getCurrentPosition和交換數據),seekbar運行時會有很大的問題。

當我可以通過捆綁發送位置時,更改seekbar運行時將不會對我做任何事情。

你能告訴我一些解決方案嗎?

回答

1

最簡單的方法是在您的服務中聲明BroadcastReceiver,然後從您的活動中使用 LocalBroadcastManager.getInstance(this).sendBroadcast(intent);向您的服務發送數據。另一種方法是將服務綁定到您的活動並直接獲取數據。 onStartCommand和onBind方法之間沒有衝突。你可以從onStartCommand開始你的服務,並在以後進行綁定。