我有一个播放从服务器(或本地)流式传输的音频的应用。
根据我们所见*,如果通过后台服务播放音频,音频将继续播放。但是,有些用户报告音频将在设备进入休眠状态时停止。我没有看到任何关于睡眠时音频行为的文档,绝对是API文档没有提到任何内容:http://developer.android.com/reference/android/media/MediaPlayer.html。有没有保证MediaPlayer在睡觉时会继续播放,如果没有,我应该在播放时启用WAKE_LOCK吗?
*(这个问题似乎支持它:Playing music in sleep/standby mode in Android 2.3.3)
答案 0 :(得分:1)
我认为设置唤醒锁并不重要,根据我的经验,它与保持服务生存无关。 Android Service文档声明可以终止不使用startForground()方法的服务以释放内存。很可能该服务要么被杀死以释放资源,要么异常导致它无声地崩溃。
答案 1 :(得分:1)
如果你的应用程序进入后台,它可以被操作系统杀死。这很有可能发生了什么。通过使用Service
使startForeground()
成为前台服务,可以大大降低发生这种情况的可能性。唤醒锁定无济于事。在强烈的记忆力下,您的前台服务可能会被杀死,但是当手机处于睡眠状态时,这种可能性很小。