Android开发工具adb的使用


Android开发中,常用的adb命令

注意:将你的手机数据线插上电脑。手机的开发者选项中,设置为允许usb调试,才能使用adb命令的。

1、查看手机是否连接电脑,以及连接了几台手机

adb devices

示例:

当然,你也可以在AndroidStudio上的terminal端中操作,例如:

接下来的指令介绍将不再插图,有兴趣的可以自己去尝试。

2、安装第三方应用

adb install xxx.apk

3、 重新安装软件

adb install -r xxx.apk

1、无论是Linux系统,还是Windows系统,用adb命令安装第三方应用之前,都必须先进入到apk所在的目录,再执行adb安装命令。否则会提示文件不存在。

2、在win7系统中,如果是进入同一个盘符下的目录,直接cd dir就可以了;如果要切换盘符,如:从C盘到D盘,直接输入 D: 回车即可。

注意: adb install xxx.apk 和adb install -r xxx.apk 两个命令,都是将APP安装到/data/目录下。因为装的是第三方应用。

3、第三方应用的卸载

adb uninstall xxx.apk

该方法只适用于第三方应用,不适用系统应用,因为系统应用不可以手动卸载。

4、系统应用安装

adb root  
adb remount  
adb push xxx.apk /system/app  
adb reboot

指令解析:
adb root   //是让adb获取root身份,即adb获得设备的超级管理员身份。
adb remount //重新挂载设备分区,为可读写。

注意:在执行adb push 之前,一样需要先进到apk,所在目录的。

adb push xxx.apk /system/app  //把apk推送到system/app 目录下,不再需要执行安装命令。因为这是属于开机会自动安装。

adb reboot  //重启手机,即可看到应用了。

注意: 系统应用使用的是系统签名,如果不是系统的签名或者是签名不对,都不能成功推送到 system/app目录的。会校验失败。

一般情况下Android很多分区,都是只允许读数据,不可以写数据。adb remount是重新mount(挂载)分区的命令,让system分区从只读变成可读可写。而想要remount分区,必须先拥有root权限才可以,所以执行adb root,是让我们的adb获取root身份,成为超级管理员。

5、删除系统应用

adb root   
adb remount   
adb shell  
cd  system/app  
ls  
rm xxx.apk
reboot  

指令解析:
adb shell   //登录设备的超级终端,详细请看:指令9
cd system/app //进入 system/app目录
ls       //列出当前目录下所有的文件和下一级目录
rm xxx.apk   //删除apk

注意:ls指令是英文L的小写,不是数字1。ls 指令用处很大,特别是在Linux系统中,经常使用指令操作,如果我们不清楚有哪些文件,马上 ls 命令来看看。
补充:
cd system/sd/data //进入系统内指定文件夹
ls //列表显示当前文件夹内容
rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件
rm xxx //删除文件xxx
rmdir xxx //删除xxx的文件夹

6、推送文件到Android设备system/app目录

adb root  
adb remount  
adb push d:\123.txt /system/app  
adb reboot

1、上面的命令是在Windows的cmd命令中,通过adb,向手机推送了一个txt文本。

2、如果我们要推送一个文件夹,把它改成文件夹的名字即可,例如,我有一个newProject命名的文件夹,用下面的命令替换即可:
adb push d:\newProject /system/app

3、如果我们要推送一个zip包,用下面的命令替换即可:
adb push d:\xxx.zip /system/app

如果要推送别的格式的文件,大家可以自己去尝试。反正模式都差不多。

总的来说,相对于推送apk到system/app目录来说,推送一个文件或者文件夹,需要指明文件路径。

从Android设备导出文件到本地电脑:

adb pull <远程路径> <本地路径>
例如:
adb pull /data/data c:\Users\admin\desktop\
能够把文件或文件夹导出来

7、删除Android设备某个目录。

adb root  
adb remount   
adb shell   
cd system/sd/data   //进入系统内指定文件夹   
ls            //显示当前目录内容   
rm -r xxx        //删除名字为xxx的文件夹及其里面的所有文件   

还可以使用以下两个指令:

rm xxx  //删除文件xxx,注意是文件,不是目录。
rmdir xxx //删除xxx的文件夹

8、 登录设备终端

adb shell

adb shell 是登录设备的超级终端Terminal。接下来输入的命令都是:直接运行设备命令, 相当于执行远程命令。而且接下来的命令都会是#号来开头,不再是$符号了。

登录shell命令后,相当于,你在Ubuntu电脑中使用Terminal终端一样了。也就是你在设备的终端直接操作Android设备了。想输什么命令就输什么命令。就跟你操作Ubuntu电脑一样。

8、退出设备的shell
输入exit(回车即可)

9、设备进入recovery模式

adb reboot recovery

执行该命令后,手机会进入recovery刷机界面

注意:前提是手机是好的,如果你使用的是第三方公司的开发板,那就不一定能进到该界面了。购买开发板的话,一定要先问清楚,能不能进recovery刷机界面。否则你在研究recovery服务的时候,就没有人指导的人了。小编就被坑过。

10、设备进入bootloader模式

adb reboot bootloader

11、查看手机上的运行日志,此项可以用来查错

adb logcat

1.1 什么是adb工具?

adb全称Android Debug Bridge,是android sdk里的一个工具。adb是一个标准的CS结构的工具。

如果你的电脑安装了AndroidStudio,你可以在AndroidStudio安装路径的 sdk\platform-tools 找到adb工具。
AndroidStudio 的简称是:AS 。如无特殊说明,均用AS代替。


1.2 adb能用来做什么?

使用adb工具可以直接操作和管理android模拟器或者真实的andriod设备(如你的Android手机)。

是不是很艹蛋的概念,so,我们不要纠结这种概念性的问题,不要在意细节。我们要保持一个目的,它能做什么,怎么操作?反正小编不知道它说的啥,小编只想知道这玩意怎么去操作。

普通手机用户是用不到adb工具的,只有Android设备开发者**或者**app开发者才会需要使用adb工具。

adb是一个通讯程序,也可以说是一个调试工具。

既然我们已经知道:adb是一个通讯程序。那么,通讯程序都会有自己的协议。也就是说,你电脑上既然有了adb程序,手机上也得有个接头的人吧,不然你电脑adb发来的东西,鬼知道你发的是啥! 所以,我们Android手机里面肯定也有adb程序的。当电脑通过adb程序发送指令的时候,我们的Android设备就会接收到adb指令了。

关于adb安装方法,大家可以去找下度娘,这里就不做介绍了。

当然,如果你的电脑安装了AS软件,那么你无需另外安装adb工具了。因为安装AS的时候,adb工具会被一起安装。

1.3 adb安装完成检测

⑴如果你的电脑安装了AS。你可以在AS项目的底部,找到一个Terminal窗口,之后在里面进行adb命令的输入。

⑵如果你的电脑是Linux系统,只装了adb工具,没装AS。那么你可以在 terminal终端,进行adb命令的输入。

⑶如果你的电脑是Windows系统,只装了adb工具,没装AS。那么你可以从cmd命令中进入Windows系统的shell界面,在里面进行adb命令输入。

Google官方推荐Android源码编译的Linux系统是——Ubuntu系统

小编用的是Windows系统,adb安装完成后,在shell界面输入:adb version 然后回车。如下图所示,则表示安装成功。

adb是一个 客户端–服务器端 程序,其中客户端是你用来操作的电脑, 访问的服务器端就是你的android设备。
Terminal的中文是:终端。如果在Ubuntu的左侧启动器中,找不到Terminal终端,大家可以使用Ctrl+Alt+T 调出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值