我们有一个使用MediaPlayer在Xamarin(Native Android App)中开发的音乐应用程序(mp3)。将会有一个接一个播放的歌曲列表。大约10分钟后,玩家停止。手机解锁后,播放器开始播放下一首曲目。似乎Nougat Doze以某种方式介入玩家。如果我为我的应用手动禁用电池优化,则没有问题。
是否有解决此问题的方法,而不是让每个用户手动更改“击球手优化”。选项。我想知道Spotify等其他应用程序如何连续播放歌曲而不进行任何设置更改。请帮忙!
答案 0 :(得分:1)
任何包含正在运行的前台服务的进程都不会被视为打盹模式。这就是Spotify和Google Play音乐等应用的用途。考虑创建一个相关的前台服务 - 它将在前台服务运行时显示在通知屏幕中,因此虚拟服务将会突然出现。
另一种选择是请求REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
权限,然后启动ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
意图,这会将用户带到应用的电池优化屏幕。这是一种不那么出色的用户体验,但不需要创建您可能不需要的前台服务。