远程调试
借助实时设备交互的远程调试功能,您可以通过互联网将本地计算机连接到Fire TV设备。远程调试会创建一种连接,使远程设备的行为就像直接插入计算机一样,从而无需通过USB以物理方式连接到设备。借助远程调试,您可以使用自己偏好的IDE(如Android Studio)实时构建、测试和调试应用。您还可以在本地计算机上运行ADB命令并使用Appium或Maestro等框架执行自动测试。
先决条件
在开始之前,请务必执行以下操作:
- 如果您使用Windows,请安装Git Bash。
- 在您的本地开发计算机上安装AWS CLI。
- 安装AWS Session Manager插件。
- 安装和配置Android SDK平台工具,以便将
adb
命令添加到PATH环境变量中。有关详细信息,请参阅Android开发者文档中的命令行工具。
访问远程调试功能
首先,按照远程连接设备中的说明连接到设备。在连接的设备上,切换到Dashboard(控制面板)选项卡,向下滚动到Remote Debug(远程调试)卡,然后按照屏幕上的说明确保满足所有先决条件。
启动远程调试会话
- 单击Start Session(启动会话)。
- 按照屏幕上的指示进行操作。
- 如果亚马逊应用商店质量中心显示信任您的ADB指纹的提示,请单击Add Key(添加密钥)。
-
在命令提示符下输入
adb devices -l
,验证设备是否已在本地连接。您应该看到一台设备列为
localhost:XXXXX device product:XXXXX model:XXXXX device:XXXXX transport_id:X
。
现在,您可以通过终端在设备上运行ADB命令。其他通过ADB与Android设备交互的程序(例如Android Studio和Appium),可以与远程设备进行交互。成功建立远程调试会话后,您可以启动Android Studio并测试您的应用。
其他指导
参考以下指导来处理远程调试会话。
- 如果您在运行adb命令时看到错误消息
adb: device unauthorized
(adb:设备未授权)或localhost:XXXXX unauthorized transport_id:X
(localhost:XXXXX未授权transport_id:X),可以尝试通过重新连接来解决这个问题:- 关闭当前会话,然后打开新会话。
- 按照访问远程调试功能中的步骤进行操作。
- 如果您运行任何导致设备断开连接的命令(例如
adb reboot
),则会话将断开连接。如果断开连接,则需要通过亚马逊应用商店质量中心启动新的会话。 adb reverse
命令没有任何效果,任何依赖于adb reverse
的应用或功能都可能无法运行。- 如果在远程会话期间您的计算机进入睡眠状态并被唤醒,则在运行
adb devices -l
时,远程设备可能仍会显示。但是,如果远程调试会话终止,您可能无法运行ADB命令。在这种情况下,运行adb disconnect
以断开所有设备的连接,然后从亚马逊应用商店质量中心重新启动会话。
使用scrcpy在本地与设备进行交互
您也可以与远程设备进行交互,而无需在浏览器选项卡中打开亚马逊应用商店质量中心。使用scrcpy(可以读成“screen copy”(屏幕复制)),您可以在本地与设备进行交互。使用scrcpy工具,您可以直接通过计算机显示和控制您的设备。
要使用scrcpy
-
在命令提示符下,运行
adb devices
以查找远程设备的名称。 -
使用命令
scrcpy --serial localhost:50104 --force-adb-forward
启动scrcpy。将
localhost:50104
替换为adb devices
下显示的远程设备的名称和端口。 -
为使scrcpy达到最佳性能,请使用以下命令:
scrcpy \ --serial *********:50104\ # 指定设备序列号 --force-adb-forward\ # 强制使用adb向前模式 --max-size 720\ # 将分辨率限制为720p --video-codec=h265\ # 使用HEVC/H.265编解码器(如果可用) --video-bit-rate=2M\ # 将比特率设置为2Mbps --max-fps=60\ # 将最大帧率设置为60fps --always-on-top # 将窗口保持在最上面
scrcpy --force-adb-forward --list-encoders
以获取可用视频编码器的列表。有关如何使用scrcpy的更多信息,请参阅官方文档(仅提供英文版)。
相关主题
Last updated: 2025年8月4日