ADB,作为Android开发人员,是经常会遇到的工具。ADB,是Android 调试桥,翻译为 Android Debug Bridge,日常开发中经常无可避免的使用到这家伙。别一提到命令符就头疼,这些是你必备的技能。比如我们要在虚拟机上装一个输入法,或是做一些其他的操作,这时候,如果虚拟机本身实现不了,就必须借助ADB来实现。具备这项能力将会在我们日常开发中大大提高效率。
以AndroidStudio为例,当我们将JAVA环境变量配置好后,在安装AndroidStudio时,会提示我们下载AndroidSDK,其中,AndroidSDK里就包含了我们用的ADB工具。
以我电脑的路径为例,我将AndroidSDK装在了默认的路径:C:\Users\k9579\AppData\Local\Android\sdk\platform-tools
根据路径我们发现
我们在这里发现野生adb一只。不过双击运行发现一闪即退。这厮就是我们用的adb了,只不过要在cmd中使用。
ADB工具位于SDK的platform-tools,我们在配置的时候要记住路径,在使用的时候,要切换到该目录下或者将路径添加到系统环境变量中。
我的电脑在装好了AndroidStudio后,cmd并不识别adb,我的解决方法是,将当前路径C:\Users\k9579\AppData\Local\Android\sdk\platform-tools放到环境变量path里,记得前面加 ; 英文封号,再在cmd输入,就发现可以识别了。
或者前面提到过,使用CMD工具,定位到该目录下进行操作:
win+r键 输入cmd,回车,接下来就进入了cmd,默认一般都会在c盘下,这里提供几个基本的命令,其他自行百度
cd .. 返回上一级
D: 切换到D盘
cd xx 进入xx文件夹
ok,基本这三个就够了,其中Tab键可以智能提示,多按几下有惊喜。。。当我们定位到该目录下时,就可以正常的使用了。
下面列举了一些常见的命令:
adb version----------------------------------------------------------------------------------------------------------------------查看版本
adb devices-----------------------------------------------------------------------------------------------------------------------查看已连接的设备
adb install X:\XXX\XXX.apk----------------------------------------------------------------------------------------------------安装X盘目录下的XXX.apk(如果adb在运行在当前目录则可以不加路径)
adb install -r X:\XXX\XXX.apk -------------------------------------------------------------------------------------------------重装X盘XXX目录下的apk,不删除缓存文件
adb uninstall packageName -----------------------------------------------------------------------------------------------卸载应用(packageName是包名)
adb start-server -----------------------------------------------------------------------------------------------------------------启动或停止命令(start&kill)
adb root----------------------------------------------------------------------------------------------------------------------------以 root 权限运行 adb(成功后输出restarting adbd as root)
adb unroot -----------------------------------------------------------------------------------------------------------------------恢复普通权限
adb -P <port> start-server ---------------------------------------------------------------------------------------------------指定网络端口
adb shell pm list packages -3 ---------------------------------------------------------------------------------------------查看第三方应用列表
adb shell pm list packages -s ---------------------------------------------------------------------------------------------查看系统应用
adb shell pm clear <packageName> ------------------------------------------------------------------------------------清除对应包名的数据与缓存
adb shell dumpsys activity activities | grep mFocusedActivity -----------------------------------------------------查看前台的Activity
adb shell am force-stop <packageName> ------------------------------------------------------------------------------强制退出应
android list targets -------------------------------------------------------------------------------------------------------------显示系统中全部Android平台
adb push <location><remote> ---------------------------------------------------------------------------------------------安装APK到系统,与install不同的是,install是将apk装到data/data目录下,可以方便的卸载。而push是将apk写入到手机系统内。只要拥有相应的权限,就可以把任何apk放到任何目录下,当然,放到System目录下,就成为了一个系统的应用程序。示例: C:\Users\Administraoor>adb push C:\demo.xml /system/temp(将demo.xml文件写入到temp目录下)
adb pull<remote><location>-------------------------------------------------------------------------------------------------获取手机内的文件到指定的目录
示例: adb pull /system/temp/ C:\demo.xml(看清楚了,中间有空格,将手机temp路径下的demo到处到C盘跟目录下)
adb shell df -----------------------------------------------------------------------------------------------------------------------查看系统盘符
adb shell screenrecord /sdcard/demo.mp4 -----------------------------------------------------------------------------录制demo到指定的目录下
adb reboot -------------------------------------------------------------------------------------------------------------------------重启
至于adb的来源,我们打开
\system\core\toolbox
\frameworks\base\cmds
这两个目录下,有我们所有的ADB命令和SHELL命令,这里就是一切的源头,感兴趣的童鞋可以看看。
模拟按键输入:
按键——返回键 adb shell input keyevent 4
HOME键----------------------adb shell input keyevent 3
音量加 ------------------------adb shell input keyevent 24
音量- -----------------------adb shell input keyevent 25
截屏 -------------------------adb shell screencap -p /sdcard/screencap.png(将屏幕截图保存至sd卡的screencap下)
ADB是一门学问,要学的东西非常多,这里不一一例举了。
下面介绍一款IDE插件ADB IDEA
使用它可以在AS中快速操作一些ADB命令
我们打开AS,——setting——plugin,搜索ADB IDEA,Install就可以使用了,非常方便。
###请支持我,扫描左侧二维码打赏,谢谢。