ADB 你想找的命令都在这里

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

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

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

1、ADB 简介 2、ADB的工做方式 3、ADB经常使用命令缓存

1、ADB 简介

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

  • 客户端,该组件发送命令。客户端在开发计算机上运行。您能够经过发出 adb 命令从命令行终端调用客户端。服务器

  • 后台程序,该组件在设备上运行命令。后台程序在每一个模拟器或设备实例上做为后台进程运行。微信

  • 服务器,该组件管理客户端和后台程序之间的通讯。服务器在开发计算机上做为后台进程运行。app

adb 工具路径 android_sdk/platform-tools/工具

2、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

验证adb 是否链接成功

3.WLAN 链接 Android 机器

此方法不经常使用,暂时忽略

3、ADB经常使用命令

1. 安装卸载apk

  • a. 安装apk

adb install apk路径

安装apk

  • b. 卸载apk

adb unstall apk包名

查询包名,并根据包名卸载apk

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

  • a. 导出手机文件

adb pull remote local

将手机Setting.apk 导出到电脑D盘

  • b. 导入文件到手机

adb push local remote

将电脑D 盘的文件 导入到手机/system/priv-app/Settings目录下

3.开启、中止ADB 服务

  • a. 开启ADB 服务

adb start-server

  • b. 中止ADB服务

adb kill-server

ADB 服务的开启与中止

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

  • a. 截屏 screencap

adb shell screencap 文件保存路径

使用adb 命令截图

  • b. 录像 screenrecord

adb shell screenrecord 文件保存路径

使用adb 命令录屏录像

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 包名/类名

启动QQ

  • c. 启动service

adb shell am startservice 包名/类名

启动指定的Service

  • d. 发送广播

adb shell am boradcast -a 广播Action

adb 命令发送开机广播

  • e. 强行中止应用

adb shell force-stop 包名

强行中止QQ进程,正在使用的QQ就会闪退被杀掉

6. 调用 PackageManager(pm 命令)

  • a. 卸载apk

adb shell pm uninstall 包名

卸载QQ

  • b. 查看手机中全部apk 包名

adb shell pm list packages

部分apk包名查看

  • c. 查看已知权限组

adb shell pm list permission-groups

全部手机权限组查看

  • d. 查看手机Feature 支持

adb shell pm list features

查看手机Feature

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

adb shell pm path 包名

查看SystemUI apk 路径

  • f. 清除app 数据

adb shell pm clear 包名

清除QQ apk 数据

  • 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

测试发现只有 使用adb 命令建立的多用户才可用命令移除

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

  • a. 获取当前运行的Activity

adb shell dumpsys activity | findstr Run

获取最近运行的Activity ,已经Top Activity

  • b. 获取apk 版本号,权限等信息的方法 adb shell dumpsys package com.xxx.xxx(包名)

adb 获取apk 版本号,权限等

8. 查看手机系统进程

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

adb shell top

使用Top命令查看系统进程

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

adb shell ps

使用 ps 命令查看系统进程

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

结合findstr 命令 过滤多余的信息

9. 使用logcat抓 log信息

  • a.使用 logcat 抓取log信息

adb logcat > 1.txt

使用logcat 抓取的信息

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

adb logcat -s 关注log标签

使用-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
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.google.android.setupwizard/.user.WelcomeActivity }

C:\Users\Administrator>
复制代码

至此,本篇已结束,若有不对的地方,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!

微信关注公众号:  程序员Android,领福利
相关文章
相关标签/搜索