开发环境

能够在 Chromebook 上运行 Android 应用很棒。它让用户可以访问庞大的 Android 生态系统产品,并为 Android 开发者提供了接触 ChromeOS 用户的机会。

ChromeOS 为 Android 开发者提供了在 Chromebook 上部署和测试其应用的工具。为了改善用户体验,请在不同的外形尺寸上验证您的应用。

无论您是直接从 ChromeOS 部署 Android 应用(在 Chromebook 上使用 Android Studio)还是从其他设备部署,您都可以使用 Android 调试桥 部署应用并调试与 Chromebook 的不同交互。有关更多详细信息,请参阅以下步骤。

启用 ADB 调试

以前,仅当处于开发者模式时,才可以在 Chromebook 上使用 ADB。从 Chrome 81 开始,不需要 shell 的开发者可以将设备保持在非开发者模式,仍然可以部署他们在 ChromeOS 中直接开发的应用。方法如下

  1. 转到设置启用 Linux(如果您尚未启用)。

  2. 启用 Linux 后,打开 Linux 设置。

  3. 打开开发 Android 应用选项。

  4. 切换启用 ADB 调试。Chromebook 将重新启动。

  5. Chromebook 重新启动后,一条消息会告知您设备上可能存在未从应用商店下载的应用程序。

  6. 现在可以使用 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. 出现提示时点击允许以允许调试。您的 ADB 会话将建立。

通过 USB 连接到 ADB

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

按照以下步骤进入开发者模式

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

    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 <端口号>

要建立 ADB 会话,请按照以下步骤操作

  1. 将 USB 数据线插入设备上的支持的端口
  2. 在您的主机上的 Android SDK 平台工具中运行adb devices,查看您的 Chromebook 是否列为支持 ADB 的设备。
  3. 在 Chromebook 上,出现提示时点击允许以允许调试器。您的 ADB 会话已建立。