[英]PowerManager and PARTIAL_WAKE_LOCK
當設備插入電源時,我的應用程序運行良好,而當設備拔出電源時,我的應用程序卻無法正常工作。 我認為負責此問題的代碼段如下:
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "foo");
wl.acquire();
foo();
wl.release();
foo()
是一個調用Camera.takePicture()
的函數,如您所知,該函數會導致並行任務完成,該任務需要幾秒鍾才能完成。 因此,當尚未拍攝照片時,實際上會調用wl.release()
。 上面的代碼由警報執行,該警報將設備從待機模式中喚醒。 我的問題是,由於在拍照之前可能會調用wl.release
的事實, wl.release
是否有在拍照之前返回待機模式的風險? wl.release()
是否wl.release()
釋放PARTIAL_WAKE_LOCK或設備保持其運行模式一段時間?
非常感謝您的任何評論。
我的問題是,由於在拍照之前可能會調用wl.release的事實,設備是否有在拍照之前返回待機模式的風險?
是。
wl.release()是否立即釋放PARTIAL_WAKE_LOCK
是。
還是設備保持其運行模式一段時間?
這取決於還有哪些可能持有WakeLock
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.