【Andriod】adb调试安卓手机时连接真机或模拟器的3种方法,你知道么?

这篇具有很好参考价值的文章主要介绍了【Andriod】adb调试安卓手机时连接真机或模拟器的3种方法,你知道么?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.adb是什么?

adb 称之为:Android 调试桥 (Android Debug Bridge )是一种允许模拟器或已连接的 Android 设备进行通信的命令行工具,它可为各种设备操作提供便利,如安装和调试应用,并提供对 Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。
- 可以在Android SDK/platform-tools中找到adb 工具或下载 ADB Kits

注: 有部分命令的支持情况可能与 Android 系统版本及定制 ROM 的实现有关。

二.adb有什么作用?

ADB 是 Android SDK 里的一个工具, 用这个工具可以直接操作管理Android模拟器或者真实的Android设备。它的主要功能有:

  • 在设备上运行Shell命令;

  • 将本地APK软件安装至模拟器或Android设备;

  • 管理设备或手机模拟器上的预定端口;

  • 在设备或手机模拟器上复制或粘贴文件。

ADB 是一个客户端-服务器程序程序,包括三个组件:
adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

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

三.adb连接真机或模拟器的方法

adb连接真机或者模拟器一共有以下3种方法

  1. 连接模拟器
  2. 有线连接真机
  3. 无线连接真机

1.连接夜神模拟器

  1. 启动夜神模拟器

  2. 连接模拟器

    • 使用win+r按键输入cmd,回车打开cmd窗口
    • adb connect 127.0.0.1:62001
      adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB
  3. 查看连接的设备

    • adb devices

      List of devices 设备名称
      attached 连接状态(devices设备正常连接、offline连接出现异常,设备无响应、unknown没有连接设备)
      adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

  4. 启用设备的开发者选项,启动调试功能

  • 夜神模拟器:设置->点击版本号7次直到出现提示【开发者选项】->返回上一步能看到【开发者选项】->USB调试
    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB
    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB
    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB
    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB
    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

2.有线连接真机(需原装数据线)

  1. 将手机与电脑通过 USB 线连接

    • 确保 Android 手机的开发者选项 USB 调试模式已开启

    • 「设置」-「开发者选项」-「Android 调试」查看。开发者选项,点允许 usb 调试,然后就可以连上电脑了

      • 如果在设置里找不到开发者选项,在「设置」-「关于手机」连续点击「版本号」7 次。
        adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB
  2. cmd框输入adb devices 命令查看设备连接情况

    • List of devices 设备名称
    • attached 连接状态(devices设备正常连接、offline连接出现异常,设备无响应、unknown没有连接设备)
      adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

3. 无线连接真机(需原装数据线)

  1. 将 Android 设备与要运行 adb 的电脑连接到同一个局域网

    • 比如连到同一个 WiFi。将手机与电脑通过USB线连接。
  2. 确保连接成功,在cmd窗口输入 adb devices 看是否能列出该设备
    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

  3. 让设备在 5555 端口监听TCP/IP连接

    • 开发者选项,点允许usb调试
    • 输入 adb tcpip 5555
    • 找到设备的 IP 地址
      • 进入手机的WIFI连接,进入连接属性,查看手机的 IP
      • 也可在**「设置」-「关于手机」-「状态信息」-「IP地址」**找到
        adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB
  4. 通过 IP 地址连接设备,在cmd窗口输入adb connect '手机ip地址'

    • 出现 connected to 192.168.31.109:5555 表示连接成功
      adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

注:连接不成功,检查以下问题

  1. 确保网络和端口都没有问题,使用的是原装数据线
  2. 请确认 Android 设备与电脑是连接到了同一个 WiFi,然后再次执行 adb connect 那一步
  3. 通过adb kill-server重新启动 adb 然后从头再来一次试试

四.常用命令

1.基本指令

adb devices:                        获取设备和设备的状态列表
adb devices -l						查看已连接的设备
adb get-serialno					 设备号
adb get-state:                      获取设备的状态(设备的状态有三种:device,设备连接正常;offline,连接出现异常,设备无响应;unknown,设备未连接;)

adb connect [ip:port]:                       远程连接设备(用于在同一网络下adb无线连接设备)
adb disconnect [ip:port]:                   断开设备连接(用于在同一网络下adb无线连接设备)

adb reboot: 重启设备

2.权限指令

  1. adb root:获取Android管理员(root用户)的权限。
    注意:一般测试机可使用root权限。
    Android版本9以上,不支持商用机使用root权限,但可以修改底层一些配置
    
  2. adb shell
    登录设备 shell,该命令将登录设备的shell(内核),登录shell后,可以使用 cd,ls,rm 等Linux命令
    

3.建立连接

  1. 基本命令

    adb -d:如果同时连了usb,又开了模拟器,连接当前唯一通过usb连接的安卓设备
    adb -e shell:指定当前连接此电脑的唯一的一个模拟器
    adb -s <设备号> shell:当电脑插多台手机或模拟器时,指定一个设备号进行连接
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

    exit:退出

  2. 杀死和重启adb服务

    adb kill-server:杀死当前adb服务,如果连不上设备时,杀掉重启。(没事不要用它) 
    
    adb start-server:杀掉后重启 
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

    • 5037:adb默认端口,如果该端口被占用,可以指定一个端口号,如下命令↓

      • adb -p 6666 start-server:任意指定一个 adb shell 的端口

4.APK指令

  1. 列出安装在设备上的应用

    adb shell pm list packages 		 列出所有应用
    adb shell pm list package -s     列出系统应用
    adb shell pm list package -3     列出第三方的应用
    adb shell pm list package -i     列出来源
    db shell pm list package -f     列出包名和路径
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

    adb shell pm list packages -d:显示禁用的包名
    adb shell pm list packages -e:显示当前启用的包名
    adb shell pm list packages -s:显示系统应用包名
    adb shell pm list packages -3:显示已安装第三方的包名
    adb shell pm list packages xxxx:加需要过滤的包名,如:xxx = taobao
    
  2. 安装

    adb install <文件路径\apk>:将本地的apk软件安装到设备(手机)上。如手机外部安装需要密码,记得手机输入密码。
    adb install -r <文件路径\apk>:覆盖安装
    adb install -d <文件路径\apk>:允许降级覆盖安装
    adb install -g <文件路径\apk>:授权/获取权限,安装软件时把所有权限都打开
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

  3. 卸载

    adb uninstall <包名>:卸载该软件/app。
    注意:安装时安装的是apk,卸载时是包名,可以通过 adb shell pm list packages 查看需要卸载的包名。
    adb shell pm uninstall -k <包名>:虽然把此应用卸载,但仍保存此应用的数据和缓存
    adb shell am force-stop <包名>:强制退出该应用/app 
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

    adb shell pm uninstall -k <包名>:虽然把此应用卸载,但仍保存此应用的数据和缓存
    adb shell am force-stop <包名>:强制退出该应用/app 
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

  4. 其他

     adb shell pm path packagename    列出应用apk的位置
     adb shell pm dump packagename  列出应用的详细信息
    adb shell pm clear packagename 清除应用的缓存数据
    

5.文件操作指令

  1. pc复制到手机
adb push <本地路径\文件或文件夹> <手机端路径>:把本地(pc机)的文件或文件夹复制到设备(手机)

adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

注意点1:pc机路径与Android机路径,分隔符是不同的。
注意点2:复制失败,大概率是无权限。可先使用上面介绍过的两个命令:adb root;adb remount。在使用 adb push 命令

  1. 手机复制pc
adb pull <手机端路径/文件或文件夹> <pc机路径>:把设备(手机)的文件或文件夹复制到本地。注意点同上

6.日志操作指令

抓取日志的步骤先输入命令启动日志,然后操作 App,复现 bug,再 ctrl+c 停止日志,分析本地保存的文件。

adb logcat把 main log 和 system log打印出来,输出完成后阻塞终端,后面输出的log会及时更新到终端。
adb logcat -d :输出完日之后退出,不会阻塞

使用管道过滤日志

adb logcat | grep ActivityManager:输出包含指定字符串的行(Linux/mac)
adb logcat | findstr ActivityManager:输出包含指定字符串的行(windows)

输出日志到指定文件

adb logcat -f /sdcard/log.txt:将日志输出到手机的/sdcard/log.txt,注意是手机上。
adb logcat > E:/log.txt:将日志输出到终端所在电脑的 E:/log.txt 文件。

优先级

V — Verbose (lowest priority, 冗长的) 对应于Log.v(tag)系列函数
D — Debug (调试用) 对应于Log.d()系列函数
I — Info(线上用) 对应于Log.i()系列函数
W — Warning(警告日志) 对应于Log.w()系列函数
E — Error (发生错误) 对应于Log.e()系列函数
F — Fatal (What a Terrible Failure,引起程序崩溃)对应于Log.wtf()系列函数
S — Silent (highest priority, on which nothing is ever printed)
adb logcat -s ActivityManager [打印TAG为ActivityManager的日志]
adb logcat -s ActivityManager:I WindowManager:W [输出TAG为"ActivityManager"并且优先级大于等于"Info"和TAG为"WindowManager"并且优先级大于等于"Warn"的日志]

7.系统操作指令

adb shell getprop ro.product.model  获取设备型号
adb shell getprop ro.build.version.release  获取设备 Android 系统版本
adb get-serialno  获取设备的序列号(设备号)

adb shell wm size  获取设备屏幕分辨率
adb shell cat /proc/meminfo:获取手机内存信息
adb shell df:获取手机存储信息 

adb shell screencap -p /sdcard/screen.png    截图并保存到指定位置

adb pull /sdcard/mms.png <存放的路径>:将截图导出到本地
adb pull /sdcard/screenshot.png <存放的路径>:将截图导出到本地 

adb shell dumpsys activity |find "mFocusedActivity" 查看前台应用包名,适用于 Android 7.0 以下,必须先启动 app
 adb shell dumpsys activity |find “mResumedActivity”:查看前台应用包名,必须先启动app,适用于Android 8.0以上

8.adb shell am基本指令

1.启动一个 Activity:adb shell am start -n [activityname]
2.等待页面启动完成:adb shell am start -W [activityname]
3.先停止应用再启动:adb shell am start -S [activityname]  
4.结束应用: am force-stop  [packagename] 

9.adb shell dumpsys基本指令

  1. 监控应用数据

    adb shell dumpsys cpuinfo       cpu信息
    adb shell dumpsys meminfo       内存信息
    adb shell dumpsys power         电源信息
    adb shell dumpsys battery       电池信息
    adb shell dumpsys wifi          wifi信息
    adb shell dumpsys notification  通知信息
    adb shell dumpsys activity      获取页面信息
    adb shell dumpsys activity services [package-name] 查看正在运行的服务
    

10.adb结合 monkey(压测)

1.什么是monkey

  • Monkey 是Android SDK提供的一个命令行工具,可以简单方便的发送伪随机的用户事件流,对Android APP做压力(稳定性)测试。主要是为了测试app是否存在无响应和崩溃的情况。

2.常用命令

  • 随机应用-随机操作

    adb shell monkey 100:对该设备下,随机应用,执行100次的随机操作。(伪随机)
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

    • -p <测试的包名列表>

      此参数指定一个或多个包。指定包之后,Monkey将只允许系统启动指定的APP。如果不指定包,Monkey将允许系统启动设备中的所有APP。
      1.不指定包:adb shell monkey 50
      2.指定一个包执行50次:adb shell monkey -p 包名 50
      3.指定多个包执行50次:adb shell monkey -p 包名1 -p 包名2 50
      
  • 指定应用-随机操作

    adb shell monkey -p <包名> 100:指定应用()随机操作100次。这里演示的包名为:com.dfcyc.app.dffs
    

    adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

  • 指定应用-随机操作并打印日志到指定路径

    adb shell monkey -p <包名> -v -v -v 100 >D:\log.txt:指定应用随机操作100次并打印日志到指定路径/文件
    adb shell monkey -p <包名> -v -v -v 100 不输出到指定文件
    
    • -v 显示日志详细程度

      用于指定反馈信息级别(信息级别就是日志的详细程度)。总共分3个级别,分别对应的参数:
      1)Level 0 : adb shell monkey -p 包名 -v 100        //默认级别,仅提供启动提示、测试完成和最终结果等少量信息
      2)Level 1 : adb shell monkey -p 包名 -v -v 100        //提供较为详细的日志,包括每个发送到Activity的事件信息
      3)Level 2 : adb shell monkey -p 包名 -v -v -v 100        //最详细的日志,包括了测试中选中/未选中的Activity信息
      

      adb有线连接手机,Andriod,adb,android,智能手机,安卓手机,ADB

11.adb shell input命令:

  • 它用于模拟用户通过触摸屏、按键和滑动等方式与设备进行交互。

    adb shell input:文章来源地址https://www.toymoban.com/news/detail-752712.html

    text [输入文本]
    keyevent [输入事件[
    tap [点击[
    swipe [滑动<坐标><坐标为原地,则是长按>[
    

到了这里,关于【Andriod】adb调试安卓手机时连接真机或模拟器的3种方法,你知道么?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • adb-连接模拟器和真机操作

    目录 1. 连接模拟器(夜神模拟器示例) 1.1 启动并连接模拟器 1.2 开启调试模式 2. USB连接真机调试 2.1 usb数据线连接好电脑,手机打开调试模式 2.2 输入adb devices检测手机 3. Wifi连接真机调试 3.1 USB连接手机和电脑 3.2 运行 adb devices,测试是否连接成功,能出现设备列表即可 3.

    2024年02月22日
    浏览(58)
  • 【Unity】使用ADB连接真机、模拟器测试

    ①连接安卓手机,需要开启开发者模式, 不同的手机开启方式有所不同,比如华为的手机需要在:设置-关于手机-版本号,连续点击7次版本号 ②打开USB调试 ③同意调试,出现如下界面,点击同意即可链接成功 cmd框输入:adb connect 127.0.0.1:5555 不同模拟器的端口不一样 夜神模

    2024年04月15日
    浏览(68)
  • 【App测试】adb三大连接方式-夜神模拟器+真机+android真机(详细步骤)

    adb连接安卓模拟器 1、检查夜神nox_adb.exe的版本与本地的adb版本是否一致 如果本地adb和夜神adb版本不一致,会相互查杀 1)检查本地adb的版本 在cmd命令行中输入: adb version ,为1.0.41版本 2)检查夜神中nox_adb.exe版本 进入到夜神的安装包的bin目录下,按住shif,点击右键,打开

    2024年02月03日
    浏览(76)
  • unity调试手机游戏(Android)【模拟器+真机】+设置运行时游戏横屏

    注:我使用的unity版本为2021.3.2f1c1 1、将平台调整为Android 点击“文件“ —— ”生成设置“ 在平台选择Android,点击右下方的切换平台 (如果没有下载Android平台包需要先下载,我的下载好后自动配置了SDK/JDK/NDK,在下载时可选。若没有选择下载SDK/NDK/JDK,需要自行配置) 检查

    2024年02月08日
    浏览(53)
  • termux安卓手机 无线adb调试安卓手机

    调试机安转termux app  Apk下载 安装 https://f-droid.org/packages/com.termux   打开termux 挂载内部存储到~/storage 目录 $ temux-setup-storage   换源加快下载与更新速度 termux-change-repo 选 Main 然后 清华   下载基础软件  pkg install git vim perl nodejs-lts wget curl nano cronie moreutils -y   安装adb git clone ht

    2024年02月09日
    浏览(54)
  • uniapp本地模拟器、手机真机调试报错{“errMsg”:“request:fail abort statusCode:-1”}解决方案

    问题描述: 在本地用uniapp开发项目的的时候,h5渲染没有异常,在模拟器,平板、手机真机的时候报错:{“errMsg”:“request:fail abort statusCode:-1”}。 原因: 模拟器、平板、手机都有自己独立的网络环境,无法直接访问本地搭建的服务器,所以会造成请求失败。 解决: 让模拟

    2024年02月11日
    浏览(65)
  • windows电脑安装 Android Studio 的时候提示“创建Android虚拟机或安装安卓模拟器失败”

      生命是黑暗的,除非有了激励;激励是盲目的,除非有了知识;知识是徒然的,除非有了工作;工作都是虚空的,除非是有了爱。   如果一定要说人生成功的标准是什么,我认为,那就是两个字,快乐。你能永远快乐,你的人生,就一定是最成功的人生。   变化多

    2024年02月15日
    浏览(56)
  • Mac使用adb调试安卓手机

    最近windows电脑休息,用mac办公比较多,手机用时间长了,不太灵光,准备修理一番。于是要用mac调试下android手机。配置略显麻烦,网上的步骤多参差不齐。估计是入门步骤,大佬们也懒得写的太细。于是这里记录下。 mac一台; mac上安装好 Android Studio 和手机对应的sdk; 1. 设

    2024年01月23日
    浏览(60)
  • Android开发-安卓手机真机调试配置教程(以小米/红米手机为例)

    打开手机的设置,点击我的设备。 进入全部参数信息。  下拉找到MIUI版本,多次连续点击,直到进入开发者模式,弹出如图提示。   在设置最上方的搜索框中搜索 开发者选项 ,点击进入开发者选项。    下拉找到“调试”中的“USB调试”和“USB安装”,全部开启,并无视

    2024年02月07日
    浏览(83)
  • Android(安卓) 无线ADB调试手机(WiFi 调试、蓝牙调试)

    1. 手机和电脑连接同一局域网(连同一个 WiFi、手机开热点电脑连接、电脑开热点手机连接) 2.手机打开USB调试模式 3. 查找你需要连接的Android(安卓)设备的ip (方式一)手机开热点电脑连接(手机分享蓝牙网络给电脑连接): 1)电脑打开cmd窗口(win+R) 输入: 2)在cmd里面输入:

    2024年02月09日
    浏览(74)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包