ADB——修改手機默認參數


修改原理

  修改設置的原理主要是通過 settings 命令修改 /data/data/com.android.providers.settings/databases/settings.db 里存放的設置值。

  利用ADB的命令可以修改手機的一些默認設置,修改設置之后,運行恢復命令有可能顯示仍然不太正常,可以運行 adb reboot 重啟設備,或手動重啟。

 

修改命令

修改分辨率

adb shell wm size 480x1024 # 表示將分辨率修改為 480px * 1024px。

# 恢復原分辨率
adb shell wm size reset

 

修改屏幕密度

adb shell wm density 160 # 表示將屏幕密度修改為 160dpi。

# 恢復原屏幕密度
adb shell wm density reset

 

修改顯示區域

adb shell wm overscan 0,0,0,200 # 四個數字分別表示距離左、上、右、下邊緣的留白像素,以上命令表示將屏幕底部 200px 留白。

# 恢復原顯示區域
adb shell wm overscan reset

 

關閉USB調試:

adb shell settings put global adb_enabled 0

 

注意:用命令無法恢復,畢竟關閉了 USB 調試 adb 就連接不上 Android 設備了。去設備上手動恢復:「設置」-「開發者選項」-「Android 調試」。

 

允許訪問非 SDK API:

adb shell settings put global hidden_api_policy_pre_p_apps 1
adb shell settings put global hidden_api_policy_p_apps 1

 

禁止訪問非 SDK API:

adb shell settings delete global hidden_api_policy_pre_p_apps
adb shell settings delete global hidden_api_policy_p_apps

 

  上述個功能不需要設備獲得 Root 權限。

  命令最后的數字的含義:

含義
0 禁止檢測非 SDK 接口的調用。該情況下,日志記錄功能被禁用,並且令 strict mode API,即 detectNonSdkApiUsage() 無效。不推薦。
1 僅警告——允許訪問所有非 SDK 接口,但保留日志中的警告信息,可繼續使用 strick mode API。
2 禁止調用深灰名單和黑名單中的接口。
3 禁止調用黑名單中的接口,但允許調用深灰名單中的接口。

 

狀態欄和導航欄的顯示隱藏

命令:

adb shell settings put global policy_control <key-values>

 

<key-value> 可由如下幾種鍵及其對應的值組成,格式<key1>=<value1>:<key2>=<value2>

key 含義
immersive.full 同時隱藏
immersive.status 隱藏狀態欄
immersive.navigation 隱藏導航欄
immersive.preconfirms ?

 

這些鍵對應的值可則如下值用逗號組合:

value 含義
apps 所有應用
* 所有界面
packagename 指定應用
-packagename 排除指定應用

  

例如:

# 設置在所有界面下都同時隱藏狀態欄和導航欄。
adb shell settings put global policy_control immersive.full=*

# 設置在包名為 com.package1 和 com.package2 的應用里隱藏狀態欄,在除了包名為 com.package3 的所有應用里隱藏導航欄。
adb shell settings put global policy_control immersive.status=com.package1,com.package2:immersive.navigation=apps,-com.package3

 

 

 

           


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM