簡體   English   中英

PowerManager和PARTIAL_WAKE_LOCK

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM