开发环境

能够在 Chromebook 上运行 Android 应用真是太棒了。它可以让用户访问大量的 Android 生态系统产品,并让 Android 开发者有机会覆盖 ChromeOS 用户。

ChromeOS 为 Android 开发者提供了在 Chromebook 上部署和测试其应用的工具。为了提升用户体验,请在不同外形规格的设备上验证您的应用。

无论您是直接从 ChromeOS(使用 Chromebook 中的 Android Studio)部署 Android 应用,还是从其他设备部署 Android 应用,都可以使用 Android 调试桥部署应用,并调试与 Chromebook 的不同交互。如需了解详情,请参阅以下步骤。

启用 ADB 调试

以前,只有在开发者模式下才能在 Chromebook 上使用 adb。从 Chrome 81 开始,开发者可以使其设备退出开发者模式,并且仍然可以直接在 ChromeOS 中部署他们开发的应用。具体方法如下:

  1. 确保 Chromebook 未处于开发者模式
  2. 转到“设置”,然后开启 Linux(如果您尚未执行此操作)。

  3. Linux 连通后,打开 Linux 设置。

  4. 打开 Develop Android apps 选项。

  5. 切换启用 ADB 调试。Chromebook 会重启。

  6. Chromebook 重启后,系统会显示一条消息,告知您可能有一些应用并非从设备上的应用商店下载。

  7. 您现在可以使用 adb 将应用部署到 Chromebook、运行调试命令以及直接与设备交互。

为了确保您的 Android 应用能够在各种 Chromebook 设备和可用设备类型上正常运行,Google 建议您在以下设备上测试您的应用:

  • 基于 ARM 的 Chromebook
  • 基于 x86 的 Chromebook
  • 带触摸屏的设备和不带触摸屏的设备
  • 可以在笔记本电脑和平板电脑之间切换的可转换设备
  • 带触控笔的设备

从 ChromeOS 部署

启用 ADB 调试后,您可以使用 Android Studio 将 Android 应用直接加载到 ChromeOS 设备上。如果您有 Android 软件包套件 (APK),则可以使用终端加载它。下文将介绍这些选项。

使用 Android Studio 部署

按照本指南中的说明设置 Android Studio 和 ADB 后,您可以直接从 Android Studio 将应用推送到 Chromebook 的 Android 容器。Chromebook 会显示为设备菜单中的一个选项:

将应用推送到 Chromebook 后,系统会显示 ADB 授权对话框。在您进行授权后,您的应用会在新窗口中打开。

现在,您可以将应用部署到 Chromebook,并对其进行测试和调试。

使用终端部署

要使用终端将应用部署到 Chromebook,请按以下步骤操作:

  1. 如有必要,请使用以下命令安装 ADB:

    sudo apt install adb
    
  2. 使用以下命令连接到设备:

    adb connect arc
    
  3. 系统会显示 USB 调试的授权对话框。授予权限:

  4. 使用以下命令从终端安装您的应用:

    adb install [path to your APK]
    

从其他设备部署

如果您无法使用上述方法并且需要从其他设备推送您的应用,可以使用 USB 连接或网络地址将设备连接到 ADB。

通过网络连接到 ADB

请按照以下步骤通过网络连接到 ADB:

  1. 确保您已启用 ADB 调试

  2. 按照以下步骤获取 Chromebook 的 IP 地址:

    • 点击屏幕右下角区域的时钟。
    • 点击齿轮图标。
    • 点击您要连接的网络类型(例如 Wi-Fi 或移动数据网络),然后点击相应网络的名称。
    • 记下 IP 地址。

连接到 Chromebook:

  1. 返回开发机器,通过 adb 的 IP 地址连接到 Chromebook:

    adb connect <ip_address>
    
  2. 在 Chromebook 上,当系统提示您允许调试程序时,点击允许。您的 ADB 会话即已建立。

排查通过网络进行的 ADB 调试问题

有时,当一切正常连接时,ADB 设备会显示它处于离线状态。在这种情况下,请完成以下步骤来排查问题:

  1. 在“开发者选项”中停用 ADB 调试
  2. 在终端窗口中,运行 adb kill-server
  3. 重新激活 ADB 调试选项。
  4. 在终端窗口中,尝试运行 adb connect
  5. 当系统提示时,点击 Allow 以允许调试。您的 ADB 会话即会建立。

通过 USB 连接到 ADB

如需将 APK 从其他设备推送到 Chromebook,您必须在开发者模式下启动 ChromeOS,以便配置 Chromebook 并从主机推送应用。

要进入开发者模式,请按以下步骤操作:

  1. 启用 ADB 调试。
  2. 确定您的设备是否支持 USB 调试
  3. Ctrl + Alt + T 以启动 ChromeOS 终端。
  4. 输入 shell 以进入 bash 命令 shell:

    crosh> shell
    chronos@localhost / $
    
  5. 输入以下命令以设置您的设备:

    $ sudo crossystem dev_enable_udc=1
    $ sudo reboot
    
  6. 重新启动后,再次打开终端并运行以下命令,以在 Chromebook 的 USB 端口启用 adb:

    $ sudo ectool usbpd <port number> dr_swap
    

每次拔下 USB 线再重新插上时,都应使用此命令。如需确保您的 Chromebook 处于面向上游的端口 (UFP) 模式,您可以运行 ectool usbpd <port number>

如需建立 ADB 会话,请按以下步骤操作:

  1. 将 USB 线插入设备上支持的端口
  2. 通过主机上的 Android SDK 平台工具运行 adb devices,可以看到您的 Chromebook 列为 adb 支持的设备。
  3. 在 Chromebook 上,当系统提示您允许调试程序时,点击允许。您的 ADB 会话即已建立。