我正在使用wl.acquire()
设置唤醒锁。这工作正常。只要我的应用程序存在,我就需要唤醒锁,因此只有在应用程序离开时才能调用release()
。如何释放唤醒锁?
我需要拨打release()
吗?例如在onStop()
?我会说不,但我不确定。
感谢,A
我正在使用wl.acquire()
设置唤醒锁。这工作正常。只要我的应用程序存在,我就需要唤醒锁,因此只有在应用程序离开时才能调用release()
。如何释放唤醒锁?
我需要拨打release()
吗?例如在onStop()
?我会说不,但我不确定。
感谢,A
除了你已经收到的其他有用答案,我刚刚发现了这个有趣的答案,关于如何force screen on,也许你会发现它也很有用,如果你真的不需要唤醒锁。
链接非常有用。 :) – Mudassir 2012-07-06 09:06:37
,如果你是指自己将这些2页:
http://developer.android.com/reference/android/os/PowerManager.html
http://developer.android.com/reference/android/os/PowerManager.WakeLock.html#release()
你应该尽快就可以释放唤醒锁:因此如果你的应用正在关闭/暂停释放它!
此外,建议的话,确保您需要一个唤醒锁,当你需要它和很长时间。
在我的情况下,我把一个只用于游戏屏幕,以避免用户屏幕在思考时变黑(因为它是一个opengl应用程序需要几秒钟完全加载),但在其他视图中,我释放它。
相信我,当我说它是一个用户最终结束一个空电池,因为一个应用程序迫使自己保持清醒的烦人。
只要我的应用程序生活 您的应用程序有多少活动?你可以在ActivityManager的弹出窗口的onDestroy()中释放它。
是的,你必须释放锁,特别是如果你要保持屏幕亮度,以避免电池消耗。
我不知道此信息是否可以帮助您,但在每个视图中都有一个名为KeepScreenOn的属性。因此,将其设置为True将使您的应用程序始终醒来......我知道我没有回答您的问题,但我认为您可能需要知道。 – junmats 2011-01-26 09:01:14