A_003.adb常用命令使用介绍

这篇具有很好参考价值的文章主要介绍了A_003.adb常用命令使用介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.adb工作原理说明

adb命令是调试控制手机过程中用的比较多工具。adb是一个C/S架构的应用程序,主要由三部分组成:

(1)、运行在电脑端的adb client程序

在电脑终端中执行adb --help可以查看当前支持的adb命令。当在命令行执行程序adb相关命令的时候,adb程序尝试连接到主机上的ADB服务器,如果找不到ADB服务器,adb程序自动启动一个ADB服务器。ADB服务器启动之后会和手机设备的adbd后台服务进程建立连接后。adb client就可以向ADB servcer发送服务请求;

(2)、运行在PC端的adb server

ADB Server是运行在主机上的一个后台进程。它的作用在于检测USB端口监听设备的连接和拔除。ADB Server还需要将adb client的请求通过tcp连接方式转发送到对应手机设备的adbd进程上去处理。

(3)、运行在设备端的常驻进程adb daemon

手机系统中的程序adbd作为一个后台进程在Android设备系统中运行。它的作用是连接PC端的ADB服务器,接收PC端ADB 服务转发过来的命令请求并进行处理。比如处理apk 安装和卸载等请求。

adb整体架构如下图所示:

A_003.adb常用命令使用介绍,安卓12源码开发定制实战,adb,android,安卓源码开发定制

2.adb常用命令功能说明

(1).adb devices命令
adb devices命令列举当前已经连接到当前电脑的手机设备。比如执行如下命令可以看到当前电脑连接的手机设备:

C:\Users\Qiang>adb devices
List of devices attached
89CX00000       device
89CX11111       device

以上命令表示当前电脑有两台手机设备通过数据线连接。当只有一台手机设备的时候,可以直接通过adb 命令连接到手机设备。如果是多台设备的话,需要使用adb -s 设备序列号来指定访问那个设备。比如我需要访问以上列举的设备"89CX00000",可以参考如下:

C:\Users\Qiang>adb -s 89CX00000  shell
blueline:/ $
blueline:/ $

(2).adb connect命令

adb connect命令用来通过ip和端口的方式连接到手机设备。在安卓手机中,可以通过开发者选项中的网络ADB调试功能项开启adb 通过wifi来连接手机设备。如下图示我个人手机打开网络adb调试功能情况:
A_003.adb常用命令使用介绍,安卓12源码开发定制实战,adb,android,安卓源码开发定制

图中显示网络调试地址为:192.168.31.217:5555。可以通过adb connect连接到该地址实现adb无线调试该设备的功能。如下所示:

C:\Users\Qiang>adb connect 192.168.31.217:5555
connected to 192.168.31.217:5555

C:\Users\Qiang>adb devices
List of devices attached
192.168.31.217:5555     device

C:\Users\Qiang>adb shell
OnePlus3:/ # id
uid=0(root) gid=0(root) groups=0(root),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc),3011(uhid) context=u:r:su:s0
OnePlus3:/ #

(3).adb disconnect命令

adb disconnect命令将会断开adb connect连接的设备。比如断开"192.168.31.217:5555"设备。执行如下:

C:\Users\Qiang>adb devices
List of devices attached
192.168.31.217:5555     device

C:\Users\Qiang>adb disconnect 192.168.31.217:5555
disconnected 192.168.31.217:5555

C:\Users\Qiang>adb devices
List of devices attached

(4).adb forward命令

adb forward命令用于端口转发,用法为:adb forward 本地端口 手机端口。端口转发主要作用就是将手机端作为server服务器,电脑端作为客户端。通过端口转发,电脑端可以使用转发的端口开发socket程序连接到手机端,然后和手机中的server程序交互。

如果需要取消转发的端口可以执行命令:adb forward --remove 本地端口
如果需要取消全部转发的端口可以执行:adb forward --remove-all

(5).adb push命令

adb push命令是将PC端的文件放到手机端中。命令用法:adb push 电脑端文件路径 手机端文件路径。比如将PC端的文件放到手机外置卡,可以如下操作:


C:\Users\Qiang>adb push E:\TempDir\test.txt  /sdcard/test.txt

C:\Users\Qiang>

(6).adb pull命令

adb pull命令是将手机端的文件放到PC端中。命令用法:adb pull 手机端文件路径 电脑端文件路径。比如将手机端的文件放到电脑端,可以如下操作:


C:\Users\Qiang>adb pull   /sdcard/test.txt  E:\TempDir\test007.txt

C:\Users\Qiang>

(7).adb shell命令

adb shell命令功能主要是建立和手机端的终端命令行执行通道。类似Ubuntu系统中的命令行终端。adb shell命令成功之后,当前终端执行上下文变成了手机设备,就可以执行手机端系统提供的各种命令。比如ls、pm、am等命令。如下执行参考:

C:\Users\Qiang>
C:\Users\Qiang>adb shell
OnePlus3:/ # ls
acct       d             init.environ.rc       lost+found       res      ueventd.rc
OnePlus3:/ # pm list packages -3
package:org.mozilla.firefox
OnePlus3:/ #

(8).adb install命令

adb install命令用来在电脑端安装apk到手机端。如下参考执行:

C:\Users\Qiang>adb install E:\TempDir\test.apk
Performing Streamed Install
Success
C:\Users\Qiang>

(9).adb install-multiple命令

adb install-multiple可以像adb install命令那样安装单个apk。同时支持安装xapk文件,安装的时候需要将xapk解压,然后传入所有的apk文件。比如需要adb安装test.xapk,首先将test.xapk当成zip包解压。然后使用如下命令安装所有的apk文件:

C:\Users\Qiang>adb install-multiple  "E:\test\config.arm64_v8a.apk" "E:\test\config.armeabi_v7a.apk" "E:\test\test.apk"
Success

C:\Users\Qiang>

(10).adb uninstall命令

adb uninstall命令用来卸载安装到手机的App应用。比如要卸载手机里面的Firefox应用,先找到该应用的包名为:org.mozilla.firefox。执行如下命令进行卸载:

C:\Users\Qiang>adb uninstall org.mozilla.firefox
Success

C:\Users\Qiang>

(11).adb logcat命令

adb logcat命令用来输出手机的运行日志信息,方便调试分析手机系统和App。可以通过adb logcat --help查看更高级的用法。比如清空日志信息执行:adb logcat -c。比如只输出TAG标签WifiClientModeImpl的日志信息,可以执行:*adb logcat WifiClientModeImpl:D :S

(12).adb remount命令

adb remount命令将系统分区挂载为可读写权限。比如一般情况下想把一个文件放到/system目录下面是没有权限的。当adb有root条件下执行adb remount之后,手机系统system分区就被挂载为可读写权限,就可以通过adb push将文件放到system目录里面。如下演示:

C:\Users\Qiang>adb remount
remount succeeded

C:\Users\Qiang>adb push E:\Downloads\myls  /system/bin/myls
E:\Downloads\myls: 1 file pushed, 0 skipped. 24.7 MB/s (68181 bytes in 0.003s)

C:\Users\Qiang>

(13).adb reboot命令

adb reboot命令主要是将手机重启到某一个状态。特别是在刷机过程中频繁使用。主要是以下三个状态:

  • bootloader状态

    如果需要线刷手机系统即fastboot方式刷机的时候就需要手机进入bootloader模式,执行:adb reboot bootloader

  • recovery状态

    如果需要卡刷即recovery模式下刷入ota升级包,需要执行:adb reboot recovery。这种情况下刷机需要把刷机包文件放到手机的外置卡/sdcard目录下面。

  • sideload模式

    sideload模式实质也是recovery模式刷机的一种,需要执行:adb reboot sideload。该模式下刷机不需要将刷机包拷贝到手机外置卡。直接在电脑终端执行:adb sideload 刷机包路径

(14).adb sideload命令

adb sideload在recovery模式下刷机使用。当recovery模式情况下开启sideload功能之后,直接在电脑终端执行:adb sideload 刷机包路径完成刷机工作。

(15).adb root命令

adb root命令主要是通知手机中的adbd 以root权限重启运行。执行成功之后adb具备root权限。

(16).adb start-server命令

adb start-server命令表示启动PC端的adb server进程。

(17).adb kill-server命令

adb kill-server命令表示停止PC端运行的adb server进程。

3.安卓手机中常用的命令

安卓手机系统某种意义上来说可以看成一个Linux系统。所以手机系统中存在Linux系统提供的ls、cat、top、ps等命令。除了提供Linux系统绝大部分的命令外,安卓系统还额外提供了许多命令。以下列举一些常用的命令。

(1).属性操作命令getprop/setprop

getprop命令获取当前手机的属性信息。比如获取手机型号可以执行:adb shell getprop ro.product.model
setprop命令用来修改手机系统的属性信息。比如修改属性:adb shell setprop ro.debuggable 0

(2).dumpsys命令

dumpsys命令用来获取或者修改安卓系统提供的binder服务的信息。可以通过adb shell service list命令来获取当前手机注册的binder服务列表。以下列举几个用法。
获取当前运行的顶层activity信息,执行如下命令:

C:\Users\Qiang>adb shell dumpsys activity |findstr "mResumed"
    mResumedActivity: ActivityRecord{4de5298 u0 com.sohu.inputmethod.sogou/com.sohu.inputmethod.settings.guide.SettingGuideActivity t9}

抓取当前屏幕的fps信息。执行如下命令:

C:\Users\Qiang>adb shell dumpsys SurfaceFlinger |findstr refresh-rate
  refresh-rate              : 60.000002 fps

C:\Users\Qiang>

查看当前电池信息。执行如下命令:

C:\Users\Qiang>adb shell dumpsys battery
Current Battery Service state:
  AC powered: true
  USB powered: false
  Wireless powered: false
  Max charging current: 1500000
  Max charging voltage: 4320000
  Charge counter: 2808681
  status: 2

(3).pm命令

pm命令可以看成Binder服务PackageManagerService的命令行代理端,提供了类似PackageManager的功能。可以通过adb shell pm help查看支持的功能列表。
以下列举一些常用的命令:

APP安装:adb shell pm install /sdcard/test.apk

APP卸载:adb shell pm uninstall com.android.test

删除App缓存:adb shell pm clear com.android.test

查看当前手机安装的App列表:adb shell pm list packages

查看某一个App的安装路径:adb shell pm path com.android.test

(4).am命令

am命令可以看成Binder服务ActivityManagerService的命令行代理端,提供了类似ActivityManager的功能。可以通过adb shell am help查看支持的功能列表。
以下列举一些常用的命令:

启动Activity:adb shell am start -n com.android.test/com.android.test.TestActivity

发送广播:adb shell am broadcast -a com.android.action.TEST

停止App运行:adb shell am force-stop com.android.test

(5).wm命令

wm命令可以看成Binder服务WindowsManagerService的命令行代理端,提供了类似WindowManager的功能。可以通过adb shell wm help查看支持的功能列表。
以下列举一些常用的命令:

获取屏幕分辨率:adb shell wm size

获取屏幕dpi信息:adb shell wm density

禁用屏幕锁:adb shell wm dismiss-keyguard

(6).svc命令

svc命令提供了控制power、wifi、usb、bluetooth打开关闭等功能。可以通过adb shell svc help查看支持的功能列表。
以下列举一些常用的命令:

蓝牙打开:adb shell svc bluetooth enable
蓝牙关闭:adb shell svc bluetooth disable
Wifi打开:adb shell svc wifi enable
Wifi关闭:adb shell svc wifi disable

(7).settings命令

settings命令对应安卓系统中android.provider.Settings类的功能。提供了对系统中设置数据库信息的获取和修改。
可以通过adb shell settings help查看支持的功能列表。以下列举几个例子说明:

查看system数据库的信息:

blueline:/ $ settings list system
accelerometer_rotation=0
alarm_alert=content://media/internal/audio/media/27?title=Bright%20Morning&canonical=1
alarm_alert_set=1
dim_screen=1
dtmf_tone=1
dtmf_tone_type=0
end_button_behavior=2
font_scale=1.0
haptic_feedback_enabled=1
hearing_aid=0

查看和修改屏幕息屏时间:

blueline:/ $ settings get   system  screen_off_timeout
30000
255|blueline:/ $ settings  put   system  screen_off_timeout  300000
blueline:/ $ settings get   system  screen_off_timeout
300000
blueline:/ $

(8).selinux状态查看和设置

查看当前手机系统selinux状态命令:adb shell getenforce

关闭当前selinux:adb shell setenforce 0

打开selinux:adb shell setenforce 1

00
255|blueline:/ $ settings put system screen_off_timeout 300000
blueline:/ $ settings get system screen_off_timeout
300000
blueline:/ $文章来源地址https://www.toymoban.com/news/detail-559266.html


**(8).selinux状态查看和设置**

查看当前手机系统selinux状态命令:**adb shell getenforce**。

关闭当前selinux:**adb shell setenforce 0**。

打开selinux:**adb shell setenforce 1**。

修改selinux状态需要有root权限才行。

到了这里,关于A_003.adb常用命令使用介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 使用ADB命令查询Android设备的安卓版本信息

    确保你已经安装了ADB并将其添加到系统的路径中。 连接你的Android设备到计算机,并确保启用了开发者选项和USB调试模式。你可以在设备的设置中找到这些选项。 打开终端(命令提示符或终端窗口)。 运行以下ADB命令来获取Android设备的安卓版本信息: 如果你希望获得更详细

    2024年02月08日
    浏览(13)
  • 安卓调试|入门扫盲必备adb调试工具介绍、安装使用说明

    安卓调试|入门扫盲必备adb调试工具介绍、安装使用说明

    欢迎关注「 全栈工程师修炼指南 」公众号 点击 👇  下方卡片  即可关注我哟! 设为 「 星标⭐ 」 每天带你  基础入门  到  进阶实践  再到  放弃学习 ! “    花开堪折直须折,莫待无花空折枝 。   ” 作者主页:[ https://www.weiyigeek.top ]   博客:[ https://blog.weiyigeek.to

    2024年02月06日
    浏览(18)
  • 【SA8295P 源码分析 (二)】12 - HQX Display(OpenWFD)调试命令介绍

    因为一些原因,本文需要移除, 对于已经购买的兄弟,不用担心,不是跑路, 我会继续持续提供技术支持, 有什么模块想学习的,或者有什么问题有疑问的, 请私聊我,我们 +VX 沟通技术问题,一起学习,一起进步 接下来,我一一私聊已经购买的兄弟添加VX,我们继续一起

    2024年02月07日
    浏览(9)
  • Android13 adb input 调试命令使用和源码解析

    Android13 adb input 调试命令使用和源码解析

    目录 一、概述 二、常用命令 2.1 输入文本 2.2 模拟按键 2.3 模拟点击 2.4 模拟滑动 2.5 模拟长按 2.6 模拟滚动 三、进阶用法 3.1 组合按键的用法 3.2 长按power键 3.3 输入中文 3.4 代码模拟发送按键 1. 方法1: 2. 方法2: 3. 方法3: 四、注意事项 五、源码解析 六、总结 好了 本篇作为And

    2024年01月20日
    浏览(19)
  • 安卓adb命令大全

    安卓官方文档:https://developer.android.google.cn/studio/command-line/adb?hl=zh-cn ADB,即 Android Debug Bridge,它是 Android 开发/测试人员不可替代的强大工具,也是 Android 设备玩家的好玩具。 注: 文中有部分命令的支持情况可能与 Android 系统版本及定制 ROM 的实现有关。 基本用法 命令语法

    2024年02月08日
    浏览(12)
  • 【Linux常用命令12】搜索命令及特殊字符的使用

    命令 文件:将标准输出重定向到一个文件中(清空原有文件的数据) 命令 2 文件:将错误输出重定向到一个文件中(清空原有文件的数据) 命令 文件:将标准输出重定向到一个文件中(追加到原有内容的后面) 命令 2 文件:将错误输出重定向到一个文件中(追加到原有内

    2024年02月07日
    浏览(43)
  • ADB命令抓取安卓app日志

    ADB命令抓取安卓app日志

    前置:  手机与电脑处于同一网络下 1、电脑安装adb 2、手机打开开发这模式   3、用cmd连接手机--adb devices   4、抓取日志前先清理一下之前的日志         adb logcat - c 5、输入命令---回车         adb logcat -v time C:UsersT58Desktoplog.txt 6、打开app执行操作 7、此时就已经抓取到

    2024年02月16日
    浏览(12)
  • 安卓设备连接电脑进行adb命令操作

    安卓设备连接电脑进行adb命令操作

    连接方式 : 数据线连接: 1)手机需通过数据线连接电脑; 2)手机调出开发者选项;手机操作步骤:设置——系统——关于手机(平板电脑)——连接点击版本号(5次或7次,提示已开启开发者模式)——返回上一层——进入开发者选项——开启USB调试; 3)手机提示选择

    2024年02月16日
    浏览(12)
  • adb wifi 远程调试 安卓手机 命令

    adb wifi 远程调试 安卓手机 命令

    使用adb wifi 模式调试需要满足以下前提条件: 手机 和 PC 需要在同一局域网下。 手机需要开启开发者模式,然后打开 USB 调试模式。 具体操作步骤如下: 将安卓手机通过 USB 线连接到 PC。(连接的时候,会弹出请求,同意就可以) 在 PC 的命令行窗口中输入下面命令查看安卓

    2024年01月16日
    浏览(13)
  • adb 清理内存_adb 常用的命令

    adb 清理内存_adb 常用的命令

    说到 ADB 大家应该都不陌生,即 Android Debug Bridge,Android调试桥,身为 Android 开发的我们,熟练使用 ADB 命令将会大大提升我们的开发效率, ADB 的命令有很多,今天就来总结下我在开发常用到的一些 ADB 命令。 查看版本 ADB 的安装这里就不多说了,输入以下命令有如下提示就证

    2024年02月05日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包