Android ADB开发常用命令总结

移动开发 Android
adb在开发中调试是很常用的命令,下面就来说说常用的adb命令有哪些?希望能对您有的帮助。

adb在开发中调试是很常用的命令,下面就来说说常用的adb命令。

简化adb 连接命令

如果指定ip 连接,一般为 adb conenct 172.18.xxx.xxx ,这样每次进行连接时,发现都有重复的的命令需要敲,程序员就是要减少重复工作,所以现在就将重复的命令省掉。(以下为mac下的配置的方法):

Android ADB开发常用命令总结

  • 新建.alias_bash 文件
  • 文件中使用 alias 别名关键字重新命令

 

  1. alias ac="adb connect $1"  
  2. alias ad="adb devices"  
  3. alias ak="adb kill-server"  
  4. alias as="adb start-server" 
  • 修改根目录下的 .bash_profile , 或者其他以 .bash 的文件中,将最后加上 source ./.alias_bash 然后重新执行 source ./.bash_profile ,或者直接关掉终端,重新打开一个。
  • 尝试使用 ac 172.18.**.** ,则可直接连接上机器,在输入 ad 即可看到adb连接到的设备。

上面只是个例子,可以在文件 .alias_bash 文件中添加其他的简化命令。

adb 多设备指定连接

在使用adb连接多个设备,当想连接到某一个设备的shell时 adb -s 172.18.xx.xx:5555 shell 。

如果是其他命令一样可以指定设备执行。例如:

  1. adb -s 172.18.xx.xx:5555 install *.apk 

adb 文件处理

复制电脑里的文件到设备

命令:

  1. adb push <电脑上的文件路径> <设备里的目录> 

例:

  1. adb push ~/sr.mp4 /sdcard/ 

复制设备里的文件到电脑

命令:

  1. adb pull <设备里的文件路径> [电脑上的目录] 

其中 电脑上的目录 参数可以省略,默认复制到当前目录。

例:

  1. adb pull /sdcard/sr.mp4 ~/tmp/ 

adb 安装卸载应用

adb 安装应用

命令格式:

  1. adb install [-lrtsdg] 

参数:

adb install 后面可以跟一些可选参数来控制安装 APK 的行为,可用参数及含义如下:

 

Android ADB开发常用命令总结

运行命令后如果见到类似如下输出(状态为 Success)代表安装成功:

 

  1. [100%] /data/local/tmp/1.apk  
  2. pkg: /data/local/tmp/1.apk  
  3. Success 

adb 卸载应用

命令:

  1. adb uninstall [-k] 

表示应用的包名,-k参数可选,表示卸载应用但保留数据和缓存目录。

命令示例:

  1. adb uninstall com.aaron.test 

adb 启动应用

启动activity

命令格式:

  1. adb shell am start [options] 

例如:

  1. adb shell am start -n com.aaron.test/.LauncherActivity 

如果想要对启动的Intent添加参数可以按照key-value形式添加。

  1. adb shell am start -n org.mazhuang.boottimemeasure/.MainActivity --es "url" "wxtlife.com" 

启动servies

命令格式:

  1. adb shell am startservice [options] 

例如:

  1. adb shell am startservice -n com.aaron.test/.MusicService 

表示调起音乐服务Service。

发送广播

命令格式:

  1. adb shell am broadcast [options] 

可以向所有组件广播,也可以只向指定组件广播。

例如,向所有组件广播 BOOT_COMPLETED:

  1. adb shell am broadcast -a android.intent.action.BOOT_COMPLETED 

向指定的接收器发送广播,例子:

  1. adb shell am broadcast -a com.aaron.action.SHOW_TIME -n com.aaron.test/.PlaySerices 

如果带参数的广播则在后面加上参数的key, value 。 例如:

  1. adb shell am broadcast -a com.aaron.action.SHOW_TIME -es "url" "wxtlife.com" 

adb 杀进程

命令:

  1. adb shell am force-stop 

命令示例:

  1. adb shell am force-stop com.aaron.test 

adb 清除应用缓存等

命令:

  1. adb shell pm clear 

表示应用名包,这条命令的效果相当于在设置里的应用信息界面点击了「清除缓存」和「清除数据」。

命令示例:

  1. adb shell pm clear com.aaron.test 

adb 模拟事件

命令:

  1. adb shell input keyevent 

例子:

  1. adb shell input keyevent 26 //模拟电源键 

adb 查看日志

命令格式:

  1. [adb] logcat [] ... [] ... 

例子:

  1. adb logcat *:W 

Android 的日志分为如下几个优先级(priority):

  • V —— Verbose(最低,输出得最多)
  • D —— Debug
  • I —— Info
  • W —— Warning
  • E —— Error
  • F —— Fatal
  • S —— Silent(最高,啥也不输出)

过滤指定TAG

  1. adb logcat -s 

其他常用命令

查看应用列表信息

查看应用列表的基本命令格式是

  1. adb shell pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER] 

即在 adb shell pm list packages 的基础上可以加一些参数进行过滤查看不同的列表,支持的过滤参数如下:

 

Android ADB开发常用命令总结

例如:

第三方应用

  1. pm list packages -s 

包名包含某字符串的应用

  1. adb shell pm list packages -3 

查看包名包含字符串aaron的命令

  1. adb shell pm list packages aaron 

查看前台 Activity

命令:

  1. adb shell dumpsys activity activities | grep mFocusedActivity 

查看正在运行的Services

命令:

  1. adb shell dumpsys activity services [] 

参数不是必须的,指定 表示查看与某个包名相关的 Services,不指定表示查看所有 Services。

CPU信息

命令:

  1. adb shell cat /proc/cpuinfo 

内存信息

内存信息

命令:

  1. adb shell cat /proc/meminfo 

其中,MemTotal 就是设备的总内存,MemFree 是当前空闲内存。

查看占用cpu占用排行

命令:

  1. adb shell busybox top 

总结:

adb 的使用还有很多的命令,这里不一一列举了。更多的可以查看adb 命令的帮助信息。

责任编辑:未丽燕 来源: Android梦想特工队
相关推荐

2013-04-28 14:03:26

Android开发Android常用命令

2020-09-28 15:14:31

Linux常用命令实用命令

2022-05-05 08:08:55

Podman命令Linux

2010-04-02 17:37:15

Oracle rman

2011-08-16 14:04:44

思科交换机常用命令

2014-01-02 09:57:56

PostgreSQL命令

2011-01-19 17:00:09

Postfix常用命令

2011-03-16 10:07:00

2014-07-25 10:55:36

Linux命令

2023-08-28 10:49:13

Linux系统

2018-01-24 15:42:49

命令功能程序

2017-02-21 12:56:21

iOSMac命令

2010-03-29 10:16:39

CentOS常用命令

2019-08-06 14:14:47

Hive SQLSQL数据库

2010-03-02 13:14:36

LinuxYUM常用命

2010-05-25 11:40:12

MySQL 常用命令

2010-01-07 17:59:50

Ubuntu APT

2010-06-29 16:57:53

SNMP协议

2014-08-15 10:47:49

Linux命令

2009-12-01 18:19:41

Suse常用命令
点赞
收藏

51CTO技术栈公众号