1

极力推荐文章:欢迎收藏
Android 干货分享

阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android

本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:

一、ADB 简介
二、ADB的工作方式
三、ADB常用命令

一、ADB 简介

ADB(Android Debug Bridge) 是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试应用,并提供对 Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。该工具作为一个客户端-服务器程序。

客户端 ,该组件发送命令。客户端在开发计算机上运行。您可以通过发出 adb 命令从命令行终端调用客户端。 后台程序 ,该组件在设备上运行命令。后台程序在每个模拟器或设备实例上作为后台进程运行。 服务器 ,该组件管理客户端和后台程序之间的通信。服务器在开发计算机上作为后台进程运行。

adb 工具路径
android_sdk/platform-tools/

二、ADB的工作方式

1. 连接 Android 模拟器

ADB与本地 TCP 端口 5037 绑定,并侦听从 adb 客户端发送的命令—所有 adb 客户端均使用端口 5037 与 adb 服务器通信。然后,服务器设置与所有运行的Android模拟器/Android 设备连接。

2.USB 连接 Android 机器

  • a. 打开开发者选项

Settings > About phone >连续点击 Build number 七次

  • b. 开启 USB debugging
  • c . Dos 下输入 adb devices 验证手机是否连上 adb

    3.WLAN 连接 Android 机器

    此方法不常用,暂时忽略

    三、ADB常用命令

    1. 安装卸载apk

    • a. 安装apk

    adb install apk路径

    • b. 卸载apk

    adb unstall apk包名

    2. 导入/导出 文件到手机中

    • a. 导出手机文件

    adb pull remote local

    • b. 导入文件到手机

    adb push local remote

    3.开启、停止ADB 服务

    • a. 开启ADB 服务

    adb start-server

    • b. 停止ADB服务

    adb kill-server

    4. 使用ADB 命令截屏、录像

    • a. 截屏 screencap

      adb shell screencap 文件保存路径

      • b. 录像 screenrecord

        adb shell screenrecord 文件保存路径

        Control + C 停止屏幕录制,否则,到三分钟或 --time-limit 设置的时间限制时,录制将自动停止。

        screenrecord 部分参数

        --size width x height 设置分辨率 eg:1280x720 --bit-rate rate 视频比特率,默认值为 4Mbps,可以设6Mbps,这样质量更好 eg: adb shell screenrecord --bit-rate 6000000 /sdcard/demo.mp4 --time-limit time 设置最大录制时长(以秒为单位)。默认值和最大值均为 180(3 分钟)。

        5. 调用ActivityManager(am 命令)

        • a. 发送 intent

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

        • b.启动Activity

        adb shell am start -n 包名/类名

        • c. 启动service

        adb shell am startservice 包名/类名

        • d. 发送广播

        adb shell am boradcast -a 广播Action

        • e. 强行停止应用

        adb shell force-stop 包名

        6. 调用 PackageManager(pm 命令)

        • a. 卸载apk

        adb shell pm uninstall 包名

        • b. 查看手机中所有apk 包名

        adb shell pm list packages

        • c. 查看已知权限组

        adb shell pm list permission-groups

        • d. 查看手机Feature 支持

        adb shell pm list features

        • e. 根据包名,查看apk 安装路径

        adb shell pm path 包名

        • f. 清除app 数据

        adb shell pm clear 包名

        • g. 多用户相关

        查看支持最多用户数
        adb shell pm get-max-users

        查询系统所有用户
        adb shell pm list users

        创建新用户
        adb shell pm create-user user_name

        移除指定id用户
        adb shell pm remove-user user_id

        7. dumpsys将系统数据转储到屏幕

        • a. 获取当前运行的Activity

        adb shell dumpsys activity | findstr Run

        • b. 获取apk 版本号,权限等信息的方法

        adb shell dumpsys package com.xxx.xxx(包名)

        8. 查看手机系统进程

        • a.使用Top命令查看系统进程

        adb shell top

        • b. 使用 ps 命令查看系统进程

        adb shell ps

        结合findstr 命令 过滤多余的信息 adb shell ps | findstr qq

        9. 使用logcat抓 log信息

        • a.使用 logcat 抓取log信息

        adb logcat > 1.txt

        • b.使用 -s 过滤log标签

        adb logcat -s 关注log标签

        • c. 使用 -c 清除缓存log

        adb logcat -c

        10. 电量管理相关命令

        • a.模拟拔下设备电源

        adb shell dumpsys battery unplug

        • b. 低电量条件下的行为

        adb shell settings put global low_power 1

        • c .恢复电源修改

        adb shell dumpsys battery reset

        11. 使用adb 命令进入recovery 模式

        进入Recovery 模式可以使用组合键,也可以使用adb 命令
        adb 命令进入recovery 模式如下 adb reboot recovery
        adb 命令进入recovery模式

        12. 跳过Google 开机向导的命令

        adb shell pm disable com.google.android.setupwizard
        adb shell settings put global device_provisioned 1
        adb shell settings put secure user_setup_complete 1

        启动开机向导命令

        C:\Users\Administrator>adb shell am start com.google.android.setupwizard/.user.WelcomeActivity
  •