android保持服务不休眠,Android开发保持屏幕常亮和CPU不休眠唤醒状态
安卓手機 APP 開發(fā),有的時候需要屏幕長時間亮著,也就是不鎖屏,這時CPU會一直處于不休眠喚醒狀態(tài)。下面介紹兩種方法。
方法一:通過 PowerManager 實現(xiàn)。
此種方法會在軟件安裝時用戶可以看到屏幕選項。
首先,在 AndroidManifest.xml 加入權(quán)限:
然后,定義PowerManager 和 WakeLock:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
WakeLock wl = powerManager.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "MyKeepScreen");
這樣,就可以用以下代碼來實現(xiàn)屏幕常量的切換了:
boolean keepScreen = true || false;
wl.acquire();
if (!keepScreen) {
wl.release();
}
這里需要注意的是 WakeLock 有幾種參數(shù):
PowerManager.FULL_WAKE_LOCK (deprecated推薦使用第一種方式)
PowerManager.SCREEN_DIM_WAKE_LOCK (deprecated推薦使用第二種方式)
PowerManager.SCREEN_BRIGHT_WAKE_LOCK (deprecated推薦使用第三種方式)
PowerManager.PARTIAL_WAKE_LOCK 此參數(shù)可以保證CPU正常運行;屏幕和鍵盤燈可以關(guān)閉。即使用戶按了電源鍵,CPU依然會運行
方法二:通過 LayoutParams 實現(xiàn)。
這種方法只需要直接在 Activity 的 onCreate() 方法里,添加以下代碼:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
這種方法不需要添加權(quán)限,所以在 APP 安裝權(quán)限列表是看不到改項。在 Activity 失效時,該功能也同時不起作用。
總結(jié)
以上是生活随笔為你收集整理的android保持服务不休眠,Android开发保持屏幕常亮和CPU不休眠唤醒状态的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成都大熊猫繁育基地几点喂食
- 下一篇: 现在没版主兑换活动了吗