adb shell 命令

 

简单点讲,adb 命令是 adb 这个程序自带的一些命令,而 adb shell 则是调用的 Android 系统中的命令,这些 Android 特有的命令都放在了 Android 设备的 system/bin 目录下,如下在命令行中敲这样一个命令:
[email protected]:/ # adb shell jjj

adb shell jjj

/system/bin/sh: jjj: not found    很明显,在 bin 目录下并不存在这个命令。

Android常用adb命令总结(二)_第1张图片

想看看有哪些命令,也不想去找文档,于是就启动模拟器,将整个 system/bin 目录复制了出来,然后一个一个的去试。

C:\Users\Administrator>adb pull /system/bin/ E:\system-bin

Android常用adb命令总结(二)_第2张图片

 

Android常用adb命令总结(二)_第3张图片

 

打开这些文件就可以发现,里面有些命令其实是一个 shell 脚本,例如打开 monkey 文件:

Android常用adb命令总结(二)_第4张图片

 

打开 am:

Android常用adb命令总结(二)_第5张图片

 

pm


Package Manager , 可以用获取到一些安装在 Android 设备上得应用信息
pm 的源码 pm.java , 直接运行 adb shell pm 可以获取到该命令的帮助信息

Android常用adb命令总结(二)_第6张图片

Android常用adb命令总结(二)_第7张图片

 

pm list package 列出安装在设备上的应用

不带任何选项:列出所有的应用的包名

Android常用adb命令总结(二)_第8张图片

 

-s:列出系统应用

adb shell pm list package -s

Android常用adb命令总结(二)_第9张图片

 

-3:列出第三方应用

adb shell pm list package -3

Android常用adb命令总结(二)_第10张图片

 

-f:列出应用包名及对应的apk名及存放位置

adb shell pm list package -f

[email protected]:/ # pm list package -f

pm list package -f

package:/system/app/SoundRecorder.apk=com.android.soundrecorder

package:/system/app/SdkSetup.apk=com.android.sdksetup

Android常用adb命令总结(二)_第11张图片

 

-i:列出应用包名及其安装来源,结果显示例子:

adb shell pm list package -i

 

Android常用adb命令总结(二)_第12张图片

 

package:com.zhihu.android installer=com.xiaomi.market

adb shell pm list package -i

命令最后加上grep关键字,可以很方便地查找自己想要的应用

 

Android常用adb命令总结(二)_第13张图片

 

参数组合使用,例如,查找三方应用中知乎的包名、apk存放位置、安装来源:

[email protected]:/ # pm list package -f -i fused

pm list package -f -i fused

package:/system/app/FusedLocation.apk=com.android.location.fused  installer=null

 

pm path 列出对应包名的 .apk 位置

[email protected]:/ # pm path com.android.smoketest

pm path com.android.smoketest

package:/data/app/SmokeTestApp.apk

Android常用adb命令总结(二)_第14张图片

 

pm list instrumentation , 列出含有单元测试 case 的应用,

后面可跟参数 -f (与 pm list package 中一样),以及 [target=package]

Android常用adb命令总结(二)_第15张图片

pm install , 安装应用

目标 apk 存放于 PC 端,请用 adb install 安装
目标 apk 存放于 Android 设备上,请用 pm install 安装

 

pm uninstall , 卸载应用,同 adb uninstall , 后面跟的参数都是应用的包名

 

am

am start 程序名 , 启动一个 Activity,已启动系统相机应用为例

Android常用adb命令总结(二)_第16张图片

 

启动通讯录

[email protected]:/ # am start com.android.contacts

am start com.android.contacts

Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.L

AUNCHER] pkg=com.android.contacts }

Android常用adb命令总结(二)_第17张图片

Android常用adb命令总结(二)_第18张图片

 

启动拨号器拨打 10086

[email protected]:/ # am start -a android.intent.action.CALL -d tel:10086

am start -a android.intent.action.CALL -d tel:10086

Starting: Intent { act=android.intent.action.CALL dat=tel:xxxxx 

Android常用adb命令总结(二)_第19张图片

Android常用adb命令总结(二)_第20张图片

 

am monitor , 监控 crash(闪退) 与 ANR(Application Not Responding)

[email protected]:/ # am monitor

am monitor

Monitoring activity manager...  available commands:

(q)uit: finish monitoring

 

 

 

Input

这个命令可以向 Android 设备发送按键事件,其源码 Input.java

input text , 发送文本内容,不能发送中文(前提先将键盘设置为英文键盘)

[email protected]:/ # input text testrabbit

Android常用adb命令总结(二)_第21张图片

Android常用adb命令总结(二)_第22张图片

 

screencap

adb shell screencap -p /sdcard/screen.png  截图命令

截屏,保存至 sdcard 目录

[email protected]:/ # screencap -p /sdcard/screen.jpg

screencap -p /sdcard/screen.jpg

Android常用adb命令总结(二)_第23张图片

 

查看到截图如下:

Android常用adb命令总结(二)_第24张图片

 

getprop

查看 Android 设备的参数信息,只运行 adb shell getprop,结果以 key : value 键值对的形式显示

Android常用adb命令总结(二)_第25张图片

adb shell getprop ro.build.version.sdk

获取设备的 sdk 版本

adb shell getprop ro.build.version.release

获取手机系统版本:

 

 

 学习交流QQ:270224761 (ep)

 

更多相关文章

  1. Android:ImageView图片缩放、居中
  2. [Android1.5]标签TabHost图片文字覆盖的问题
  3. Android仿人人客户端(v5.7.1)——对从服务器端(网络)获取的图片进行
  4. Android实现选择相册图片并显示功能
  5. 运用android的Matrix类来旋转图片
  6. titanium更改默认图片

随机推荐

  1. Android使用Animation技巧讲解
  2. android multi user中MTP 多用户的处理
  3. 关于Android(安卓)APK反编译的探索
  4. Google Android开发精华教程
  5. Android手机或Android平板电脑 应用不能
  6. Android中四大组件
  7. 去除Android系统应用的通知功能
  8. android通过USB使用真机调试程序
  9. 一个Google Play的开发者,要了解的一些小
  10. Android(安卓)如何使EditText不自动获取