我的应用的目标是在整个Android
系统上保持屏幕显示。以前,我已经使用了FULL_WAKE_LOCK,它允许我阻止整个系统的屏幕变暗。但是,自API级别17以来,它已被弃用:
此常量在API级别17中已弃用。大多数应用程序都应该这样做 使用FLAG_KEEP_SCREEN_ON而不是这种类型的唤醒锁定 当用户在两者之间移动时,由平台正确管理 申请并不需要特别许可。
Official documentation recommends使用FLAG_KEEP_SCREEN_ON,但只能将其用于特定Activity
。
我仍然FULL_WAKE_LOCK,但是我发现它现在在某些设备上不起作用,例如MediaPad华为x2,Redmi Note 3等。我目前使用的方式{可以找到{1}} on GitHub。在PowerManager
之后有没有更好的方法来完成这项任务?
答案 0 :(得分:0)
从API 23开始及其新的打盹模式唤醒锁被忽略,它们不会阻止系统进入睡眠状态。
您应该尝试与唤醒锁并行维护前台服务,理论上应该阻止设备进入睡眠状态。
注意:前台服务必须调用startForeground并显示不可忽略的通知