adb常规命令的使用

http://blog.csdn.net/harry_helei/article/details/5966630 

adb(Android Debug Bridge)是 android系统开发配套的命令行工具之一,开发人员利用该工具,通过命令行或脚本与模拟器和android设备进行进行交互。使用该命令前,最好将命令所在的文件目录添加到系统的标准搜索路径下,下面的命令都是基于此做法给出的。我是在UBuntu的终端上使用这些命令的。

      adb help:帮助信息查询

      adb version:adb工具版本查询命令

这些命令没什么意思,不说。

      我准备说明的排名第一的命令是:adb devices,该命令用来显示所有已连接的设备。之所以首先介绍该命令是因为在前一篇中,我提到过,在进行设备连接时需要使用该命令来查看是否与PC连接成功。在终端中键入该命令后,会列举出当前已连接的所有设备,包括所有打开的模拟器。不过,本人在第一次使用时,遇到这样的问题,键入命令后,所有模拟器都显示正常,但是连接的android手机,确提示如下:

???????????? no permission

看起来貌似是运行adb命令的系统权限不够,将运行权限切换到root下,还是不行,到网上看看,遇到此类问题的人也不少,究其原因是由于开启adb服务时,不是在root下进行的。解决方法很简单。首先:在终端键入命令:adb kill-server,关闭adb服务;然后:键入命令:sudo adb start-server;最后:再键入命令:adb devices即可。

       adb start-server:启动adb服务,用法见adb devices命令中的问题解决部分

       adb kill-server:关闭adb服务,用法见adb devices命令中的问题解决部分

       adb install [options] <file name>:应用程序包(.apk)的安装命令,该命令执行了两个动作,首先,将包push到设备上,然后,完成包的安装。如果,当前PC上同时连接了模拟器和开发设备(如:手机),通过在adb后面添加-d(device)和-e(emulate)来指定安装在哪类设备上,如:adb -d install xxx.apk,表示安装到开发设备上。[options]是install命令的可选项,有以下几个:

-l:前向锁定程序(目前没搞懂这是啥意思)

-r:覆盖安装程序,并保持已有数据不变。

-s:安装到sd卡上而非内部存储空间。该选项对android2.2以前的版本有效,从2.2开始,默认都是安装到sd卡上的。

     adb uninstall [-k] <package>:卸载安装包。可以近似理解为是上述install命令的逆向操作。不过从二者的命令参数可以看出是不同的。此处,卸载的是安装包,不是文件名。安装包名的获取,可以通过adb shell命令进入设备后,在/data/data目录下查找。可选项-k表示保留数据和文件。

     adb push <本地目录/文件> <设备端目录>:将指定的本地目录或文件发送到设备端的目录中。如:push /home/helei/123.mp3 /sdcard,就是将我的本机上位于目录/home/helei下的名为123.mp3的文件发送到设备端的sd卡上,这样我们就可以在设备端本地播放该音乐文件了。

     adb pull <设备端目录/文件> <本机目录>:将设备端指定的目录或文件拷贝到本机指定的目录。

     adb shell:登录到远程设备的终端,然后可以执行设备支持的常规Linux命令,如:-l, cd等等。退出命令是exit。

     除了上述命令以外,还有一些跟数据同步,网络连接及设备信息查询相关的命令,可通过adb help查看相关的帮助信息。

你可能感兴趣的:(adb常规命令的使用)