adb shell settings 控制安卓系统设置(转)

Android4.2的源码android-17\com\android\commands目录下较之前的版本多了一个settings命令,查看其中的SettingsCmd.java文件,末尾有命令的帮助信息:

1 private static void printUsage() {
2         System.err.println("usage:  settings [--user NUM] get namespace key");
3         System.err.println("        settings [--user NUM] put namespace key value");
4         System.err.println("\n'namespace' is one of {system, secure, global}, case-insensitive");
5         System.err.println("If '--user NUM' is not given, the operations are performed on the owner user.");
6     }

选项中的key为什么值,很难从帮助信息中看出,从代码中查看该key值是在android.provider.Settings中定义了。
http://developer.android.com/reference/android/provider/Settings.System.html

该命令可以很方便的更改系统设置中的参数(如修改系统默认输入法),给出几个使用该命令的例子:

复制代码
 1 #获取系统默认输入法
 2 #默认搜狗输入法
 3 C:\Users\Administrator>adb shell settings get secure default_input_method
 4 com.sohu.inputmethod.sogouoem/.SogouIME
 5 
 6 #默认为Appium使用中文输入时安装的输入法
 7 C:\Users\Administrator>adb shell settings get secure default_input_method
 8 io.appium.android.ime/.UnicodeIME
 9 
10 #put命令更改默认输入法(将io.appium.android.ime/.UnicodeIME改为com.sohu.inputmethod.sogouoem/.SogouIME)
11 C:\Users\Administrator>adb shell settings put secure default_input_method com.sohu.inputmethod.sogouoem/.SogouIME
复制代码
1 #获取亮度是否为自动获取
2 C:\Users\Administrator>adb shell settings get system screen_brightness_mode
3 1
4 #获取当前亮度值
5 C:\Users\Administrator>adb shell settings get system screen_brightness
6 30
7 #更改亮度值(亮度值在0—255之间)
8 C:\Users\Administrator>adb shell settings put system screen_brightness 150
1 #获取屏幕休眠时间
2 C:\Users\Administrator>adb shell settings get system screen_off_timeout
3 15000
4 #更改休眠时间,10分钟
5 C:\Users\Administrator>adb shell settings put system screen_off_timeout 600000
1 #获取日期时间选项中通过网络获取时间的状态,1为允许、0为不允许
2 C:\Users\Administrator>adb shell settings get global auto_time
3 1
4 #更改该状态,从1改为0
5 C:\Users\Administrator>adb shell settings put global auto_time 0

以及获取、修改wifi状态(wifi_on)、飞行模式(airlpane_mode_on)等,这里也是appium中getNetworkConnection获得设备网络状态的方法。

posted @   鸭子船长  阅读(5636)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2017-01-16 leetcode-Single Number II
2017-01-16 设计模式六大原则(6)——开闭原则
2017-01-16 设计模式六大原则(5)——迪米特原则
2017-01-16 leetcode-Single Number
点击右上角即可分享
微信分享提示