欢迎加入QQ讨论群258996829
麦子学院 头像
苹果6袋
6
麦子学院

Android 学习之adb常用命令详解

发布时间:2017-09-10 22:49  回复:0  查看:2189   最后回复:2017-09-10 22:49  

本文和大家分享的主要是android开发中常用的adb命令相关内容,一起来看看吧,希望对大家学习android有所帮助。

  简化adb 连接命令

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

  · 新建.alias_bash 文件

  ·文件中使用 alias 别名关键字重新命令

alias ac="adb connect $1"

alias ad="adb devices"

alias ak="adb kill-server"

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 

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

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

  adb 文件处理

  复制电脑里的文件到设备

  命令:

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

  例:

  adb push ~/sr.mp4 /sdcard/

  复制设备里的文件到电脑

  命令:

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

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

  例:

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

  adb 安装卸载应用

  adb 安装应用

  命令格式:

  adb install [-lrtsdg]

  参数:

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

Android&nbsp;学习之adb常用命令详解

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

  [100%] /data/local/tmp/1.apk

  pkg: /data/local/tmp/1.apk

  Success

  adb 卸载应用

  命令:

  adb uninstall [-k]

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

  命令示例:

  adb uninstall com.aaron.test

  adb 启动应用

  启动activity

  命令格式:

  adb shell am start [options]

  例如:

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

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

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

  启动servies

  命令格式:

  adb shell am startservice [options]

  例如:

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

  表示调起音乐服务Service

  发送广播

  命令格式:

  adb shell am broadcast [options]

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

  例如,向所有组件广播 BOOT_COMPLETED

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

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

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

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

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

  adb 杀进程

  命令:

  adb shell am force-stop 

  命令示例:

  adb shell am force-stop com.aaron.test

  adb 清除应用缓存等

  命令:

  adb shell pm clear

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

  命令示例:

  adb shell pm clear com.aaron.test

  adb 模拟事件

  命令:

  adb shell input keyevent

  例子:

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

  adb 查看日志

  命令格式:

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

  例子:

  adb logcat *:W

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

  · V —— Verbose(最低,输出得最多)

  · D —— Debug

  · I —— Info

  · W —— Warning

  · E —— Error

  · F —— Fatal

  · S —— Silent(最高,啥也不输出)

  过滤指定TAG

  adb logcat -s

  其他常用命令

  查看应用列表信息

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

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

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

Android&nbsp;学习之adb常用命令详解

例如:

  ·第三方应用

  pm list packages -s

  ·包名包含某字符串的应用

  adb shell pm list packages -3

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

  adb shell pm list packages aaron

  查看前台 Activity

  命令:

  adb shell dumpsys activity activities | grep mFocusedActivity

  查看正在运行的Services

  命令:

  adb shell dumpsys activity services []

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

  CPU信息

  命令:

  adb shell cat /proc/cpuinfo

  内存信息

  内存信息

  命令:

  adb shell cat /proc/meminfo

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

  查看占用cpu占用排行

  命令:

  adb shell busybox top

  总结:

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

 

 

来源:Android梦想特工队

您还未登录,请先登录

热门帖子

最新帖子