使用 Android 定位 ChromeOS

此页面讨论了使用 Flutter 构建支持 ChromeOS 的 Android 应用的独特注意事项。

Flutter 和 ChromeOS 提示和技巧

对于当前版本的 ChromeOS,只有某些来自 Linux 的端口会向环境的其余部分公开。以下是如何启动具有可用端口的 Android 应用的 Flutter DevTools 的示例

$ flutter pub global run devtools --port 8000
$ cd path/to/your/app
$ flutter run --observatory-port=8080

然后,在 Chrome 浏览器中导航到 http://127.0.0.1:8000/# 并输入应用程序的 URL。您刚刚运行的最后一个 flutter run 命令应输出类似于 http://127.0.0.1:8080/auth_code=/ 格式的 URL。使用此 URL 并选择“连接”以启动 Android 应用的 Flutter DevTools。

Flutter ChromeOS lint 分析

Flutter 具有特定于 ChromeOS 的 lint 分析检查,以确保您正在构建的应用在 ChromeOS 上运行良好。它会查找 Android 清单中 ChromeOS 设备上不可用的必需硬件、暗示请求不受支持的硬件的权限,以及其他会降低这些设备体验的属性或代码。

要激活这些检查,您需要在项目文件夹中创建一个新的 analysis_options.yaml 文件以包含这些选项。(如果您有现有的 analysis_options.yaml 文件,则可以更新它)

include: package:flutter/analysis_options_user.yaml
analyzer:
 optional-checks:
   chrome-os-manifest-checks

若要从命令行运行这些,请使用以下命令

$ flutter analyze

此命令的示例输出可能如下所示

Analyzing ...
warning • This hardware feature is not supported on ChromeOS •
android/app/src/main/AndroidManifest.xml:4:33 • unsupported_chrome_os_hardware