2011-12-23 37 views
0

我目前正在製作應用程序,將控制如何在Android設備上啓動和停止mediaplayer。只有音樂。我只想讓我的服務在音樂播放器在後臺或前端處於活動狀態時運行。我想這樣做是爲了節省電池壽命,所以它不能一直運行。如何檢測媒體播放器是否正在運行

我偶然發現了這個AudioManager.isMusicActive()幾次,但不知道這是否僅限於音樂在後臺播放。

對於一些背景,我的應用程序將啓動,停止,跳過歌曲,並暫停音樂。

請,謝謝你的幫助!

+0

我的應用程序將使用多個傳感器,而且我想這樣做,所以傳感器整個時間都不活躍 – blitzfire911 2011-12-23 00:01:40

回答

0

控制服務運行時間的正確方法是在歌曲開始時啓動,當歌曲結束或暫停時停止。這將幫助您不必輪詢以查看音樂是否正在運行。

但是,如果你絕對要查詢,看是否有服務正在運行,你可以使用以下命令:

for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) { 
     if (YourServiceClass.class.getName().equals(service.service.getClassName())) { 
       service_running = true; 
      } 
     } 
相關問題