前言

在编写项目的时候,调试无疑是十分重要的一环。虚拟机调试虽然方便好用,但是最终还是需要在真机上进行最终调试。真机调试分为USB数据线调试WIFI无线调试,来了解一下吧。

教程

启动Android Studio并打开被调试的项目

图片

USB调试

打开开发者模式

每个手机品牌有所不同,可以通过搜索引擎查询相关资料。这里以MIUI11为例:

  1. 设置-我的设备-全部参数-MIUI版本
    连续点击10次MIUI版本会出现开发者模式相关的提示:
    图片
  2. 设置-更多设置-开发者选项
    分别勾选开启开发者选项USB调试USB安装
    图片

使用数据线连接手机与电脑

Android Studio的工具栏会出现手机的名称:
图片
在手机的状态栏会出现两条常驻通知:
图片

启动调试并允许安装应用

点击调试按钮以启动调试:
图片
在构建和编译完毕后,将会向手机安装应用。在应用第一次安装时会有提示,允许安装即可:
图片

查看日志

在真机调试成功之后,点击Logcat可以看到相关日志:
图片

WIFI调试

将手机与电脑置于同一局域网内

手机和电脑连接同一个路由器即可。

打开控制台

点击Android Studio底栏中的Terminal
图片

监听端口

当手机重启后应重新执行此部分操作以监听端口

  1. 使用数据线连接手机与电脑
  2. Terminal中输入adb devices命令
    此时会看到已经通过数据线连接成功的手机:
    图片
  3. Terminal中输入adb tcpip 5555命令
    此命令让手机监听5555端口:
    图片

连接手机

当Android Studio重启后应重新执行此部分操作以连接手机

  1. 断开数据线
  2. Terminal中输入adb connect 手机IP地址命令
    如图,成功实现无线连接:
    图片

启动调试

点击调试按钮以启动调试:
图片

常见问题

  1. adb无限重启
    可能是开启了无线调试选项导致的adb崩溃,取消勾选File-Settings-Build, Extension, Deployment-Debugger中的Enable adb mDNS for wireless debugging即可。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    * daemon not running; starting now at tcp:5037
    * daemon started successfully
    Sending Tracking request failed!
    Adb connection Error:远程主机强迫关闭了一个现有的连接。
    Cannot reach ADB server, attempting to reconnect.

    * daemon not running; starting now at tcp:5037
    * daemon started successfully
    Sending Tracking request failed!
    Adb connection Error:远程主机强迫关闭了一个现有的连接。
    Cannot reach ADB server, attempting to reconnect.

参考资料