您好,登錄后才能下訂單哦!
從Android 6.0(API level 23)開始,Android提出了兩個延長電池使用時間的省電特性給用戶。用戶管理可以在沒有充電的情況下管理app的行為。當用戶一段時間沒有使用手機的時候,Doze模式通過延緩app后臺的CPU和網(wǎng)絡活動減少電量的消耗。App Stanbdy延緩用戶最近沒有使用app的后臺網(wǎng)絡活動。
作為移動開發(fā)人員,我們開發(fā)的App需要有推送功能,不希望在鎖屏或者不充電的時候被Doze模式干掉。那么如何檢測手機進入Doze模式之后App的狀態(tài)呢?
一、模擬未充電狀態(tài)
模擬手機在連接USB的狀態(tài)下的未充電狀態(tài)。
使用adb命令
我們先用 adb shell dumpsys battery
這段命令查看一下手機當前的狀態(tài)
可以看到當前手機是連接USB充電
敲入命令 adb shell dumpsys battery unplug
模擬手機未充電狀態(tài)
這時我們看到 AC powered 和 USB powered 都已經(jīng)關閉,證明模擬手機未充電狀態(tài)成功。
二、IDLE有效化
敲入命令 adb shell dumpsys deviceidle enable
讓IDLE有效化。
三、進入IDLE模式方法
有兩種方法。
第一種是,屏幕亮著狀態(tài)按下電源按鈕關閉屏幕,敲入命令讓其進入IDLE模式。
(注意:我們在切換狀態(tài)的時候要重復輸入幾次命令,直到進入IDLE模式。)
我們可以清晰地看到,手機在重復執(zhí)行幾次之后已經(jīng)進入IDLE模式。證明第一種方法好用。
第二種是,敲入命令強制讓手機進入IDLE模式。
敲入命令 adb shell dumpsys deviceidle force-idle
我們可以敲入命令查看并驗證當前手機是否已經(jīng)進入IDLE模式
敲入命令 adb shell dumpsys deviceidle
我們可以看到手機屏幕當前是開啟狀態(tài),但是已經(jīng)進入IDLE模式。證明第二種方法也好用。
四、恢復手機狀態(tài)
當我們模擬完狀態(tài)之后要恢復回去,以便手機能夠正常使用。
敲入命令 adb shell dumpsys deviceidle disable 和 adb shell dumpsys battery reset
即可讓手機恢復狀態(tài)。再敲入 adb shell dumpsys battery
查看一下手機是否已經(jīng)恢復狀態(tài)。
我們可以看到,手機已經(jīng)從IDLE模式恢復到正常狀態(tài)。
以上所述是小編給大家介紹的Android Doze模式啟用和恢復詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。