Android ADB 常用命令

Android ADB


  1. adb devices 列出已连接的设备

  2. adb install path_to_apk 安装应用到系统

    adb -s emulator-5555 install xxx.apk 使用 -s 选项与 adb 命令来指定设备序列号

  3. adb uninstall com.example.a 卸载软件

    1. adb shell pm install path_to_apk

      常用选项

      1. -r 重新安装现有应用,并保留其数据
      2. -d 允许版本代码降级
      3. -g 授予应用清单中列出的所有权限
    2. adb shell pm uninstall package-name

      常用选项

      1. -k 移除软件包后保留数据和缓存目录
  4. adb pull remote local 从设备中复制某个文件或目录

  5. adb push local remote 将某个文件或目录(及其子目录)复制到设备

  6. adb shell screencap filename 屏幕截图

    # 截图并将其pull到用户目录
    adb shell screencap /sdcard/screen.png
    adb pull /sdcard/screen.png
    
  7. adb sehll screenrecord [options] filename 录制视频

    常用选项

    1. -size 设置视频大小,如:adb shell screenrecord -size 1280x720 /sdcard/demo.mp4

    2. -bit-rate 设置视频的视频比特率(以 MB/秒为单位)

      如录制比特率设为 6Mbps:adb shell screenrecord --bit-rate 6000000 /sdcard/demo.mp4

    3. -time-limit 设置最大录制时长(以秒为单位)。默认值和最大值均为 180(3 分钟)。

    4. -rotate 将输出旋转 90 度

Logcat

  1. [adb] logcat [<option>] ... [<filter-spec>] ...
    1. adb logcat

    2. adb logcat -f <filename> 将日志写入文件。默认值为输出到 stdout

    3. adb logcat ActivityManager:I *:S 只输出tag为ActivityManager,优先级不低于info的日志消息

      可以在一个过滤器表达式中提供任意数量的 tag:priority规范

      表达式中最后一个元素 *:S 将所有标记的优先级设为“静默”,来确保系统仅显显示Tag是 ActivityManager 的日志消息。

    4. adb logcat -v color 用不同的颜色来显示每个优先级

    5. adb logcat -b radio 查看崩溃日志缓冲区

    6. adb logcat -c/--clear 清空所选/默认的缓冲区

      默认缓冲区集为 mainsystem 和 crash。如需清除所有缓冲区使用 -b all -c

调用 Activity 管理器 (am)

  1. adb shell am start [options] intent 启动由 intent 指定的 Activity

    1. start 常用选项 -D :启用调试功能

    2. intent 常用选项:

      -a action指定 intent 的 Action
      -d data_uri指定 intent 数据 URI
      -c category指定 intent 类别
      -n component指定带包名前缀的组件名称,创建显式 intent
      -f flags添加Flag
      -e--es extra_key extra_string_value
      -ez extra_key extra_boolean_value以键值对的形式添加布尔值数据
      --ei extra_key extra_int_value以键值对的形式添加整数型数据
      --el extra_key extra_long_value以键值对的形式添加长整型数据
      --ef extra_key extra_float_value以键值对的形式添加浮点型数据
      --eu extra_key extra_uri_value以键值对的形式添加 URI 数据
      --ecn extra_key extra_component_name_value添加组件名称,作为 ComponentName 对象
      --eia extra_key extra_int_value[,extra_int_value...]添加整数数组

      adb shell am start -n com.example.demo/com.example.demo.MainActivity

      adb shell am start -D -n com.example.demo/com.example.demo.MainActivity

      adb shell am start -a android.intent.action.VIEW

      adb shell am start -a android.intent.action.CALL -d tel:888***888

  2. adb shell am startservice intent 启动由 intent 指定的 Service

  3. adb shell am force-stop package 强行停止与 package 关联的所有进程

  4. kill [options] package 仅终止可安全终止且不会影响用户体验的进程

  5. kill-all 终止所有后台进程

  6. broadcast intent 发出广播 intent

    adb shell am broadcast -n "com.example.demo/com.example.demo.XxBroadcastReceiver" -f 0x00000020 --es "com.example.demo.intent.extra.EXTRA_XXX" "extra-value"
    

调用软件包管理器 (pm)

  1. adb shell pm list packages [options] filter 输出所有软件
    1. adb shell pm list package 输出所有软件

    2. adb shell pm list package com.example 输出所有软件

    3. adb shell pm list package -f 查看它们的关联文件

      > adb shell pm list packages -f -U example
      package:/data/app/xxx/base.apk=com.example.a uid:10111
      package:/data/app/xxx/base.apk=com.example.b uid:10111
      package:/data/app/xxx/base.apk=com.example.c uid:10111
      
    4. adb shell pm list package -3 进行过滤以仅显示第三方软件

    5. adb shell pm list package -f | grep example

    6. adb shell pm clear com.example. 删除与软件包关联的所有数据

# Android  ADB 

作者:ITmob
来源:ITmob.cn
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×