我正在PARTIAL_WAKE_LOCK
为我的MediaPlayer
实例设置一个:
mMediaPlayer.setWakeMode(getApplicationContext(), PowerManager.PARTIAL_WAKE_LOCK);
我怎样才能释放它?它完成了MediaPlayer.release()
吗(我在文档中看不到任何相关内容)?
我正在PARTIAL_WAKE_LOCK
为我的MediaPlayer
实例设置一个:
mMediaPlayer.setWakeMode(getApplicationContext(), PowerManager.PARTIAL_WAKE_LOCK);
我怎样才能释放它?它完成了MediaPlayer.release()
吗(我在文档中看不到任何相关内容)?
它于MediaPlayer.release()
、MediaPlayer.stop()
和发布MediaPlayer.reset()
。它也已发布onCompletion
和onError
.
浏览这里的源代码MediaPlayer
:
看起来MediaPlayer.stayAwake()
是负责任的,这将释放唤醒锁。
private void stayAwake(boolean awake) {
if (mWakeLock != null) {
if (awake && !mWakeLock.isHeld()) {
mWakeLock.acquire();
} else if (!awake && mWakeLock.isHeld()) {
mWakeLock.release();
}
}
mStayAwake = awake;
updateSurfaceScreenOn();
}
这是一个私有方法,但它在各种状态下被调用,例如 inrelease()
stayAwake(false)
被调用。
只需搜索一下mWakeLock
,stayAwake(false)
您就会看到。我还检查了 1.5,它是一样的。