安卓ADB命令行工具使用指南

最近准备清理手边的电子产品发现好几台老旧手机,包括iPhone4S和几台安卓低端机器。iPhone4S是之前的爱姬,放了好久以后电池也不行了。唯独有一台Android的低端机还能用。记得之前也用这台机器完了一把刷机并写了一篇文章《记一次安卓刷机的小结》。由于这台机器的配置非常低,系统也被裁剪的几乎只能打电话发短信。即没有安卓商店,也没有浏览器。所以如何安装app就变成了首要任务。最后发现也只能够把apk下载下来通过SD卡安装或者使用ADB(Android Debug Bridge)命令行工具实现。通过SD卡安装没什么困难,这里就说一说安卓命令行工具ADB的一些使用技巧。

下载和使用ADB工具

实际上ADB工具是Android SDK平台工具集中的工具之一。Android SDK平台工具还包括了adb,fastboot,systrace等各种工具。因此,如果需要使用ADB工具的话,并不需要下载整套的安卓SDK,只需要下载单独的Android SDK平台工具包即可。当然,如果是Android开发人员,那么SDK Platform Tools就已经集成在SDK中,不需要再单独下载。

另外,在默认情况下安卓手机是不支持远程调试Debug的。因此需要开启Android手机的开发者模式,并且激活USB调试选项。一般来说都是在“关于手机”选中中连续点击“Android版本”显示开发者模式。不同品牌的手机和不同型号的Android系统,开启的方法略微不同,但是都不是很复杂。这个大家可以根据自己手边的设备在网上搜索一下便可找到。

前期工作准备好以后,就可以将手机通过USB与电脑连接并在命令行中使用一下命令显示已连接的设备:

./adb devices

正常情况下该命令会把所有连接的设备都列出来。例如我连接了一台真实设备,输出结果为:

* daemon not running; starting now at tcp:5037
* daemon started successfully
List of devices attached
D5287E1R23456789 device

使用ADB查看安卓CPU和内存
ADB是一个非常强大的工具,连接Android设备以后,能够做很多事情。例如我们可以通过以下命令查看Android设备的CPU信息:

./adb -s D5287E1R23456789 shell cat /proc/cpuinfo
./adb -s D5287E1R23456789 shell cat /proc/meminfo

这里涉及到一个很重要的命令shell。这个命令非常强大,这里就不详细介绍。

使用ADB安装应用
我们也可以使用ADB工具安装APK文件。以微信为例,我们从官网下载好微信APK文件以后,可以使用以下命令安装APK文件:

./adb -s D5287E1R23456789 install ~/Desktop/weixin_arm64.apk

使用ADB推送文件
如果能够使用ADB工具安装APK文件,其实也是可以使用ADB工具推送或者下载Android系统文件的。例如,以下命令可以上传文件到Android手机文件夹中:

./adb -s D5287E1R23456789 push hello.txt /sdcard/
./adb -s AA8TUOZHTG9H6DCU push hello.txt /storage/sdcard0/
./adb -s AA8TUOZHTG9H6DCU push hello.txt /storage/sdcard1/

这里可能会有一个问题,我们如何知道Android手机中文件系统的情况?例如,怎么知道文件夹结构并且把文件上传上指定的文件夹中?此时,我们同样可以使用shell命令实现。

./adb -s D5287E1R23456789 shell #进入shell模式
ls -al #查看文件夹

一般来说,sdcard是默认的系统文件路径,也可以是是/storage/sdcard0。如果有外部存储卡,一般来说是/storage/sdcard1

使用ADB重启Android手机
如前所述,方法相同,命令如下:

./adb -s D5287E1R23456789 reboot

安卓Shell键盘模拟输入
之前提到Shell是一个功能非常强大的命令。除了能够传文件,装APP,重启系统以外,还可以模拟字符输入等。例如,通过shell命令输入手机号码:

./adb -s D5287E1R23456789 shell input text 18010136728
./adb -s D5287E1R79015139 shell input text "hello%sworld" #%s代表空格

目前经过测试无法直接发送中文字符或者Unicode字符。另外,如果默认输入法是中文输入法,这个键盘模拟输入就会当成拼音输入。关于这种情况,网上有一个解决方案(本人没有尝试)可供参考。

Captain QR Code

扫码联系船长

发表评论

电子邮件地址不会被公开。 必填项已用*标注