2017-01-30 32 views
2

我們在Xamarin(原生Android應用程序)中使用MediaPlayer開發了一個音樂應用程序(mp3)。將會有一個接一個播放的歌曲列表。大約10分鐘左右後,玩家停下來。手機解鎖後,播放器開始播放下一首曲目。似乎牛軋糖打瞌睡是不知何故干預球員。如果我手動禁用我的應用程序的電池優化,那麼沒有問題。Xamarin MediaPlayer被Android Doze Mode中斷

是否有任何解決此問題的方法,而不是讓每個用戶手動更改「Batter Optimization」選項。我不知道Spotify等其他應用程序如何在沒有任何設置更改的情況下連續播放歌曲請幫忙!

回答

1

任何包含正在運行的前臺服務的進程都不會被認爲是打盹模式。這就是Spotify和Google Play音樂所使用的應用程序。考慮創建一個相關的前臺服務 - 當前臺服務正在運行時,它會顯示在通知屏幕中,所以虛擬服務將突出顯示。

另一種選擇是請求REQUEST_IGNORE_BATTERY_OPTIMIZATIONS權限,然後啓動ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS意圖,該意向將使用戶進入應用程序的電池優化屏幕。這是一個不太好的用戶體驗,但不需要創建您可能不需要的前臺服務。