如何让安卓设备在插入时不休眠
Posted
技术标签:
【中文标题】如何让安卓设备在插入时不休眠【英文标题】:How to keep android device from sleeping while plugged in 【发布时间】:2010-10-16 17:20:18 【问题描述】:我想在我的一项活动正在运行并且手机已插入电源时保持屏幕亮起。我知道 Wakelocks 很棘手,所以我正在寻找有关如何实现此特定目标的示例或一些文档。
【问题讨论】:
【参考方案1】:不要为此使用唤醒锁 - 只需根据设备当前是否插入来设置和清除窗口标志 WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
。您可以使用 Activity.getWindow().addFlags()
设置标志。
所以代码是
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
【讨论】:
【参考方案2】:WakeLock
并没有那么棘手,只需确保在调用 acquire()
时检查它是否已被保留,并确保在调用 release()
时它已被保留.您还需要确保在清单文件中定义了 android.permission.WAKE_LOCK
权限。
如果您只想在手机插入时获取 WakeLock,您可以注册一个 BroadcastReceiver
来监视 android.intent.action.ACTION_POWER_CONNECTED
和 android.intent.action.ACTION_POWER_DISCONNECTED
意图。我自己没有使用过这些,因此在这些意图真正起作用之前,您可能需要获得一些应用程序权限。
【讨论】:
以上是关于如何让安卓设备在插入时不休眠的主要内容,如果未能解决你的问题,请参考以下文章