【问题标题】:Keep screen on from a service从服务中保持屏幕开启
【发布时间】:2013-04-06 05:40:31
【问题描述】:

我想知道如何通过服务使屏幕永久开启。这是代码的场景: 用户将手机插入电源插座, 广播接收器获取事件,启动防止屏幕超时的服务。 用户拔掉电话,服务被终止,超时恢复。

我想使用唤醒锁,但所需的级别在 API 13 中已弃用:

int SCREEN_BRIGHT_WAKE_LOCK 此常量在 API 级别已弃用 13. 大多数应用程序应该使用 FLAG_KEEP_SCREEN_ON 而不是这种类型的唤醒锁,因为它将被平台正确管理为 用户在应用程序之间移动并且不需要特殊的 权限。

FLAG_KEEP_SCREEN_ON 不能从我所阅读的服务中使用。

我不想修改屏幕超时数,因为如果我的服务被破坏或应用程序被卸载,我不希望超时停留在一个很高的数字。

我的应用程序也无法获得任何系统权限,所以任何需要 DEVICE_POWER 权限的东西,我都无法使用

有什么想法吗? 感谢您的任何见解, 阿米什人

【问题讨论】:

  • 不要忘记接受答案或回答您自己的问题,稍后再接受。

标签: android service timeout screen wakelock


【解决方案1】:

已弃用并不意味着您不能在大于 13 的版本中使用它。 如果您的最低要求版本是 8(未确认),那么您别无选择。唤醒锁在 api 级别 17 中仍然可用。

【讨论】:

  • 哦不知道。那么我会尝试唤醒锁。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-09
  • 1970-01-01
  • 2021-09-01
  • 2012-05-03
相关资源
最近更新 更多