您的位置 首页 > 数码极客

【adb重启是什么意思】实用adb命令

笔者从事OEM手机开发,以下是比较常用的命令,之后会不断更新。

1.指定特定的连接设备

$ ADB devices

List of devices attached

Cf 264b 8f设备

模拟器-5554设备

如果连接了多个设备,ADB devices将列出所有连接的设备,您可以通过ADB -s序列号指定特定设备。例如,ADB -s cf264b8f shell WM size命令获取名为cf264b8f的设备的分辨率

2.启动/停止ADB

Adb start-服务器

Adb kill-server

Adb kill-server此命令经常使用,可以重新执行与Adb相关的命令。

笔者这个命令执行完毕后最常用的的是adb remount。adb start-server这个命令一般不需要执行,当运行adb 命令时如果adb server 还未启动会自动调起。

3. 获取手机上安装的应用列表

adb shell pm list packages

这个命令会列出当前设备上安装的所有应用,后面可以跟参数,比如后面追加-s表示列出系统应用,-3表示列出三方应用,-f表示列出应用关联的APK

或者追加一个字符串,表示列出包含该字符串的包名

adb shell pm list packages test

这个命令即表示列出包名中含有test的应用,其效果等价于adb shell pm list packages | grep test

4. 安装/卸载 应用

adb install APK的路径

adb uninstall APK的包名

这个命令也是经常会用到,adb install 后面可以追加不同参数,笔者用过追加 -r 表示覆盖安装,-s表示安装到sd卡

5. 清除APK的数据

adb shell pm clear 包名

比如adb shell pm clear com.android.test 表示清除test这个应用的数据和缓存,效果等同于手动去设置中的清除缓存和数据按钮。

6. 列出前台 Activity

adb shell dumpsys activity activities | grep mFocusedActivity

这个命令可以迅速定位到当前界面所在的包名以及类名

7.调起指定的Activity/Service,发送指定广播

adb shell am start -n com.

如上命令表示调起LauncherUI这个界面,同样调起指定service把start改为startservice即可

发送指定的广播稍稍复杂点,举个例子如下

adb shell am broadcast -a android.in -n com.lee.test/.CompleteReceiver

表示向 com.lee.test/.CompleteReceiver 发送一个 BOOT_COMPLETED 广播,这个命令实用也很频繁,经常是用在调试时候,执行这个命令发送指定广播来debug,特别是一些广播的场景很难制作的情景

8. 强行停止应用

adb shell am force-stop -n 包名

比如adb shell am force-stop -n com.android.test,表示停止com.android.test这个应用的一切进程与服务

9. PC与手机互传文件

adb pull 手机文件路径 电脑上目录

如上命令表示将手机上指定路径上文件拷贝到电脑上的指定目录,若电脑目录省略则代表当前目录。比如adb pull /sdcard /share/ 表示将SD下的 拷贝到电脑share目录下

adb push 电脑上的文件路径 手机目录

这个命令表示将电脑上文件push到手机里,笔者从事手机开发这两个命令每天都会用的很频繁

10.模拟按键/输入

adb shell input keyevent 具体数值

这个具体数值代表不同的含义,比如adb shell input keyevent 85 表示媒体控制中的播放/暂停;adb shell input keyevent 224 点亮屏幕;焦点处于文本框时adb shell input text hello可以代替手动输入hello。keyevent还有很多,可以自行查阅

11. Android 日志

adb logcat [<option>] ... [<filter-spec>] ...

adb logcat后面可以追加不同参数,笔者从事手机开发上层部分,经常使用的是adb logcat -v time >lee.log 抓取上层日志并输出到lee.log文件中,adb logcat -v time后面追加-s 具体TAG名,可以打印具体TAG的日志

12.查看IMEI号

adb shell

su

service call iphonesubinfo 1

输出示例:

Result: Parcel(

0x00000000: 00000000 0000000f 00360038 00390030 '........8.6.0.9.'

0x00000010: 00350035 00320030 00370037 00350038 '5.5.0.2.7.7.8.5.'

0x00000020: 00340030 00000031 '0.4.1... ')

这里的是 860955027785041。

13. adb shell cat /system

adb shell cat /system

查看系统属性,这个对于像笔者这样从事手机开发一定不会陌生

14.屏幕截图并传到电脑端

adb shell screencap -p /sdcard

这一步屏幕截图保存在/sdcard下,紧接着执行

adb pull /sdcard 电脑目录

这一步将sdcard下的拷贝到电脑端,电脑目录省略则拷贝到当前目录

15.录制屏幕

adb shell screenrecord /sdcard

这一步录制视频并保存到sdcard下,命名为lee

同样的导出到电脑端步骤和上一条截图操作一样,这个命令也是比较常用,特别是和测试同事扯皮时可以录制一个视频证明自己的清白,哈哈

16. 重启机器

adb reboot

17. Monkey 压力测试

adb shell monkey -p 包名 -v 500

这个是最简单的命令,表示向指定应用程序发送 500 个伪随机事件,像是单击、触摸、手势等操作Monkey有很多命令,具体可以自行查阅,笔者曾经只用过两三次,大部分时候都是测试同事测试提供日志过来。

18.查看进程

adb shell ps

还有很多比如查看CPU信息啊,分辨率,Mac 地址,内存信息等等这些不怎么常用的这里就不列出了,本文只列出常用高频命令。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

推荐阅读