android adb shell常用命令(四)

一、简介

adb命令是adb这个程序自带的一些命令,而adb shell则是调用的Android系统中的命令,这些andorid特有的命令都放在来Android设备的system/bin目录下。

二、常用命令介绍

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

    • pm list package //列出所有的应用包名
    • pm list package -s //列出系统应用
    • pm list package -3 //列出第三方应用
    • pm list package -f //列出应用包名及对应的apk存放位置
    • pm list package -i //列出应用包名及其安装来源
      • -i 后加关键字过滤自己想要的应用
      • $pm list package -f -3 -i learningparentphone 
    • pm list instrumentation //列出含有单元测试case的应用,后面可跟参数-f(与pm list package中一样),以及 [TARGET-PACKAGE]
      • $pm list instrumentation
      • $pm list instrumentation -f
    • pm dump +包名 //列出指定应用的dump信息,里面有各种信息
      • $ pm dump com.hfjy.learningparentphone
    • pm install +包名 //安装应用
      • 文件存放在PC端,请用adb install +包名安装
      • 文件存放Android端,请用pm install +包名安装
    • pm uninstall +包名 //卸载应用,同adb uninstall
    • pm clear +包名清除应用数据
    • pm set-install-location //设置应用安装位置
    • pm get-install-location //获取应用安装位置
    • pm path +包名//列出指定应用的.apk位置
      • $ pm path com.hfjy.learningparentphone                                                                     
      • #package:/data/app/com.hfjy.learningparentphone-S3QRnLd5jfsGdL6_0cM7xA==/base.apk

    

am 

am这个指令是 activity manager的缩写。这个命令可以启动Activity、打开或关闭进程、发送广播等操作。

 
1、根据Intent启动 *Activity start [options] INTENT *
options参数如下:
  • -D:开启debug模式
  • -W:等待启动完成
  • –start-profiler:将profiler中的结果输出到指定文件中
  • -P:和–start-profiler一样,区别在于,在app进入idle状态时profiler结束
  • -R : 重复启动Activity,但每次重复启动都会关闭掉最上面的Activity
  • -S:关闭Activity所属的App进程后再启动Activity
  • –opengl-trace:开启OpenGL tracing
  • –user <USER_ID> :使用指定的用户来启动activity,如果不输入,则使用当前用户执行
常用命令样例: 
  //使用Action方式打开系统设置-输入法设置 
   adb shell am start -a android.settings.INPUT_METHOD_SETTINGS 
  //使用组件名方式启动照相机功能
   adb shell am start -n com.android.camera/.Camera 
  //打开拨号界面,并传递一个DATA_URI数据给拨号界面
  am start -a android.intent.action.CALL -d tel:10086

 

2、根据Intent 启动Service startservice [options] INTENT

options参数如下:
–user <USER_ID> :
使用指定的用户来启动activity,如果不输入,则使用当前用户执行
命令样例:
//使用ComponentName 方式启动一个Service
adb shell am startservice com.some.package.name/.YourServiceSubClassName

 

3、关闭指定包名的应用程序
命令样例:
adb shell am force-stop com.some.package

4、杀死与应用程序的包名称相关联的所有进程。
备注: 该命令只会杀死安全的进程,不会影响用户体验。
kill [options] PACKAGE
options参数如下:
–user <USER_ID> :
使用指定的用户来启动activity,如果不输入,则使用当前用户执行
命令样例: adb shell am kill com.some.package

5、adb shell am kill-all
杀死后台所有进程

6、发送广播
broadcast [options] INTENT
options参数如下:
–user <USER_ID> :
使用指定的用户来启动activity,如果不输入,则使用当前用户执行
命令样例:
//恢复出厂设置的方法,会清除内存所有内容(慎重测试!!!!)
adb shell am broadcast -a android.intent.action.MASTER_CLEAR

posted @ 2019-07-21 00:49  helloTerry1998  阅读(434)  评论(0编辑  收藏  举报