热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Chrome开发者工具远程调试Android设备概述

远程调试Android设备在Windows,Ma





远程调试Android设备

在Windows,Mac 或 Linux 上远程调试 Android 设备上的实时内容。

remote debugging illustration

TL;DR



  • 设置你的Android设备进行远程调试,并从开发机中发现它。

  • 从您的开发机器检查和调试Android设备上的实时内容。

  • 将来自Android设备的内容屏播到DevTools。


要求

在开始远程调试之前,您需要︰


  • 在开发机上安装 chrome 32 或更高版本。

  • 如果你使用的 Windows,请安装 USB 驱动程序到你的开发机上。(并且确保Device Manager(设备管理器)报告的 USB 驱动程序正确)

  • 用USB数据线将你的 Android 手机连接到您的开发机上。

  • Android 4.0 或更高版本。

  • Android设备上安装Android版的chrome。


在 Android 设备上启用 USB 调试

在您的Android设备上,打开Settings(设置),找到Developer options(开发人员选项)部分,并启用USB debugging(USB调试)。如果您运行的是Android 4.2或更高版本,并且无法找到Developer options(开发人员选项),您可能需要启用它。

连接并发现 Android 设备

在您的开发机上,打开Chrome。您需要登录到其中一个用户配置(user profiles)。远程调试在隐身或访客模式下不起作用。

打开DevTools 主菜单 并选择More tools(更多工具)>Inspect devices(检查设备)。

opening the inspect devices dialog

从这里可以看到所有连接的远程设备的状态。如果当前没有连接任何设备,因此你看到的对话框应该类似于下面的截图。确保启用Discover USB devices(发现 USB 设备)。

empty inspect devices dialog

使用USB数据线将Android设备连接到开发机。您应该将Android设备直接连接到开发机,不要通过任何中间 hub(集线器)。

如果这是您第一次将此Android设备连接到此开发机,您应该在Inspect Devices(检查设备)对话框中看到一个未授权的未知设备。

pending authorization

如果是这种情况,那么您需要在Android设备上打开Allow USB debugging(允许USB调试)提示并授予权限。

提示︰ 如果您在发现设备过程中遇到任何问题,您可以重新开始该过程,返回到Developer options(开发人员选项),然后点击Revoke USB debugging authorizations(撤消USB调试授权)。

Allow USB debugging(允许USB调试)后,您应该可以在Inspect Devices(检查设备)对话框中看到你的设备了。

inspect devices dialog with connection

在开发机中调试 Android 设备上的内容

Inspect Devices(检查设备)对话框中,从左侧的菜单中选择你的设备。

inspecting a device

从这里,您可以看到有关你连接的Android设备的各种信息:


  • 在顶部,您可以看到Android设备的型号名称,后面是其序列号(例如,Nexus 5 #08ae8c2700f43a61)。

  • 如果一个或多个Chrome标签页已打开,那么您会看到一个Chrome标题,后面是正在运行的Chrome版本号(例如,Chrome (49.0.2623.105))。如果没有打开Chrome标签页,您将看不到Chrome标题。

  • 在Chrome标题下,每个打开的标签页都有自己的标题。您可以从此部分与该标签页进行交互。

  • 如果有任何正在运行的应用程序使用WebView,您会看到每个应用程序的标题。

要打开新的Chrome标签页,请在Chrome标题下的文本字段中输入网址,然后点击Open(打开)。新标签页将自动打开并加载指定的URL。

reload(重新加载),focus(获取焦点)或close(关闭)打开的标签页,单击inspect(检查)按钮旁边的more options(更多选项)图标。

reload, focus, or close a tab

当你想在开发机上打开DevTools并检查或调试Android设备上实时内容的时候,单击要检查或调试的标签页旁边的inspect(检查)按钮。DevTools会在你的开发机器上打开一个新实例。

devtools instance for remote content

注意︰  Android设备上的Chrome版本决定了开发机器上在远程调试期间使用的 DevTools 的版本。因此,开发机器上的DevTools窗口可能看起来不同于你曾经使用过的版本。

当您在Elements(元素)面板中悬停或选择元素时,该元素在Android设备上会突出显示。

您也可以 tap(轻触) Android设备的屏幕,来选择元素。首先,在DevTools中单击select element(选择元素)按钮(选择元素按钮),然后在Android设备屏幕上 tap(轻触) 。元素会在DevTools的Elements(元素)面板中被选中。请注意,select element(选择元素)按钮在第一次触摸后会被自动禁用,因此你在每次使用此功能时需要重新启用它。

屏播 Android 设备到开发机

启用toggle screencast(切换屏播)按钮(toggle screencast button)可在你的DevTools窗口中查看Android设备上内容的屏幕录像。

screencasted android device content in devtools

屏播仅显示页面内容。屏播的透明部分表示设备接口,例如Chrome多功能框,Android状态栏,或Android键盘。

注意︰  屏播是持续的帧捕获,如果您的测试对帧速率敏感度,所以你应该禁用屏播。

您可以使用多种方式与屏播交互︰


  • 点击事件 会被转换为 tap(轻触)事件,发送至设备上触发正确的触摸事件。

  • 开发机上的键盘事件会发送到安卓设备。

  • 要模拟 pinch(捏) 手势,请在拖动时按住Shift键。

  • 若要滚动,请使用你的触控板或鼠标滚轮,或按住鼠标左键拖动。







推荐阅读
  • 深入解析CAS机制:全面替代传统锁的底层原理与应用
    本文深入探讨了CAS(Compare-and-Swap)机制,分析了其作为传统锁的替代方案在并发控制中的优势与原理。CAS通过原子操作确保数据的一致性,避免了传统锁带来的性能瓶颈和死锁问题。文章详细解析了CAS的工作机制,并结合实际应用场景,展示了其在高并发环境下的高效性和可靠性。 ... [详细]
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
  • 在 Windows 10 环境中,通过配置 Visual Studio Code (VSCode) 实现基于 Windows Subsystem for Linux (WSL) 的 C++ 开发,并启用智能代码提示功能。具体步骤包括安装 VSCode 及其相关插件,如 CCIntelliSense、TabNine 和 BracketPairColorizer,确保在 WSL 中顺利进行开发工作。此外,还详细介绍了如何在 Windows 10 中启用和配置 WSL,以实现无缝的跨平台开发体验。 ... [详细]
  • 本文总结了在SQL Server数据库中编写和优化存储过程的经验和技巧,旨在帮助数据库开发人员提升存储过程的性能和可维护性。 ... [详细]
  • 本文详细介绍了数据库并发控制的基本概念、重要性和具体实现方法。并发控制是确保多个事务在同时操作数据库时保持数据一致性的关键机制。文章涵盖了锁机制、多版本并发控制(MVCC)、乐观并发控制和悲观并发控制等内容。 ... [详细]
  • Python 3 Scrapy 框架执行流程详解
    本文详细介绍了如何在 Python 3 环境下安装和使用 Scrapy 框架,包括常用命令和执行流程。Scrapy 是一个强大的 Web 抓取框架,适用于数据挖掘、监控和自动化测试等多种场景。 ... [详细]
  • 在什么情况下MySQL的可重复读隔离级别会导致幻读现象? ... [详细]
  • Win10 S系统与Chrome浏览器兼容性问题分析
    2017年5月2日,微软在美国推出了最新的Windows 10 S操作系统,专为教育领域设计,旨在为教师和学生提供一系列高效的产品和服务。该系统的最大特点是其简洁的设计和快速的响应速度,然而在与某些应用的兼容性方面,特别是Chrome浏览器,仍存在一些问题。本文将深入分析这些兼容性问题,并探讨可能的解决方案。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • 本文深入解析了 jQuery 中用于扩展功能的三个关键方法:`$.extend()`、`$.fn` 和 `$.fn.extend()`。其中,`$.extend()` 用于扩展 jQuery 对象本身,而 `$.fn.extend()` 则用于扩展 jQuery 的原型对象,使自定义方法能够作为 jQuery 实例的方法使用。通过这些方法,开发者可以轻松地创建和集成自定义插件,增强 jQuery 的功能。文章详细介绍了每个方法的用法、参数及实际应用场景,帮助读者更好地理解和运用这些强大的工具。 ... [详细]
  • 在Ubuntu系统中安装Android SDK的详细步骤及解决“Failed to fetch URL https://dlssl.google.com/”错误的方法
    在Ubuntu 11.10 x64系统中安装Android SDK的详细步骤,包括配置环境变量和解决“Failed to fetch URL https://dlssl.google.com/”错误的方法。本文详细介绍了如何在该系统上顺利安装并配置Android SDK,确保开发环境的稳定性和高效性。此外,还提供了解决网络连接问题的实用技巧,帮助用户克服常见的安装障碍。 ... [详细]
  • 深入解析C#中app.config文件的配置与修改方法
    在C#开发过程中,经常需要对系统的配置文件进行读写操作,如系统初始化参数的修改或运行时参数的更新。本文将详细介绍如何在C#中正确配置和修改app.config文件,包括其结构、常见用法以及最佳实践。此外,还将探讨exe.config文件的生成机制及其在不同环境下的应用,帮助开发者更好地管理和维护应用程序的配置信息。 ... [详细]
  • 在深入掌握Spring框架的事务管理之前,了解其背后的数据库事务基础至关重要。Spring的事务管理功能虽然强大且灵活,但其核心依赖于数据库自身的事务处理机制。因此,熟悉数据库事务的基本概念和特性是必不可少的。这包括事务的ACID属性、隔离级别以及常见的事务管理策略等。通过这些基础知识的学习,可以更好地理解和应用Spring中的事务管理配置。 ... [详细]
  • 在 Ubuntu 22.04 LTS 系统中安装 HPLIP 的详细步骤与注意事项
    HPLIP 是 HP 官方提供的软件套件,旨在支持多种 HP 打印机型号,如 Deskjet、Officejet、Photosmart、PSC、Business Inkjet 和 LaserJet 等。本文详细介绍了在 Ubuntu 22.04 LTS 系统中安装 HPLIP 的步骤,并提供了重要的注意事项,确保用户能够顺利配置和使用 HP 打印设备。 ... [详细]
  • Squaretest:自动生成功能测试代码的高效插件
    本文将介绍一款名为Squaretest的高效插件,该工具能够自动生成功能测试代码。使用这款插件的主要原因是公司近期加强了代码质量的管控,对各项目进行了严格的单元测试评估。Squaretest不仅提高了测试代码的生成效率,还显著提升了代码的质量和可靠性。 ... [详细]
author-avatar
但须g婚后
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有