部分喚醒鎖定停滯

部分 Wake Lock 是 PowerManager API 中的一項機制,可以讓開發人員在關閉裝置螢幕 (無論是因為系統逾時還是因為使用者按下電源鍵) 之後繼續運行 CPU。應用程式可以使用 PARTIAL_WAKE_LOCK 標記呼叫 acquire(),或使用其他可取得 Wake Lock 的 API,獲取部分 Wake Lock。當應用程式在背景執行時 (使用者看不到應用程式的任何部分),如果部分 Wake Lock 保持了較長時間,就會進入「停滯」狀態。這種狀況會阻止裝置進入電量較低的狀態,因此會快速消耗裝置電量。您應只在必要時使用部分 Wake Lock,並於不再需要時立即釋放。

如果應用程式進入部分 Wake Lock 停滯狀態,您可以根據本頁面的指南診斷並修正問題。

修正問題

由於 Wake Lock 可能會耗盡裝置電量,因此如有替代方案,請勿使用 Wake Lock。請參閱「選擇適當的 API,讓裝置保持喚醒狀態」文件,找出最適合您應用程式的解決方案。

如果必須使用 Wake Lock,請遵循 Wake Lock 最佳做法,確保 Wake Lock 不會影響裝置效率。特別是,請務必釋放您取得的每部裝置,並盡快釋放鎖定。

修正程式碼中的問題後,可以使用本機 Wake Lock 偵錯工具驗證修正內容。

另請參閱