由於個別需求,需要做一個不讓系統屏常亮不休眠的APP,於是使用了電源鎖,在oncreate里加了如下代碼:
PowerManager pm = (PowerManager) context .getSystemService(Context.POWER_SERVICE);
WakeLock mWakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK| PowerManager.ACQUIRE_CAUSES_WAKEUP, TAG);
mWakeLock.acquire();
然后測試發現,沒有用,系統還是會自動滅屏進入休眠,看log發現是這個被鎖系統異常釋放了,經過多次測試發現,電源鎖的申請,不要放在oncreate、onresume等操作里,需要在應用創建完成后在調用才有效,比如在oncreate里啟動一個定時器,延時一小段時間再啟動,就可以正常使用了。