【问题标题】:“Android license status unknown” in flutter doctorFlutter Doctor 中的“Android 许可证状态未知”
【发布时间】:2020-07-07 04:41:09
【问题描述】:

当我在命令行上运行 flutter doctor 时遇到 Android Sdk 错误

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v1.4.9-hotfix.1, on Mac OS X 10.14.4 18E226, locale zh-Hans-CN)
[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    ✗ Android license status unknown.
      Try re-installing or updating your Android SDK Manager.
      See https://developer.android.com/studio/#downloads or visit
      https://flutter.io/setup/#android-setup for detailed instructions.
[✓] iOS toolchain - develop for iOS devices (Xcode 10.2)
[✓] Android Studio (version 3.3)
[✓] VS Code (version 1.33.1)
[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

在遵循 stackoverflow 社区的几个可能的修复后,我仍然无法让它工作。 请问我需要帮助。

【问题讨论】:

    标签: android flutter android-sdk-tools android-sdk-manager


    【解决方案1】:

    这对我有用

    修复 1:

    • 启动 Android Studio 并打开 SDK 管理器(Android Studio 右上角)
    • 导航到 SDK 选项卡并查找 Android SDK Platform-Tools
    • 如果已选中,请取消选中并单击“应用”(我们正在尝试卸载以前的版本)
    • 现在“SDK 工具”已卸载。让我们通过选中该框并单击“应用”来重新安装它
    • 点击确定并重启 Android 工作室
    • 导航到 SDK 安装位置 %USERPROFILE%\AppData\Local\Android\Sdk for windows,您应该会看到一个新文件夹 tools 注意:如果您没有看到 tools 文件夹,请不要惊慌,我已经解决了您的问题。
    • 打开tools 文件夹并导航到bin
    • 复制文件夹路径(即C:\Users\USERNAME%\AppData\Local\Android\Sdk\tools\bin
    • 将该路径添加到环境变量中
    • 现在您应该可以在命令行中访问sdkmanager。输入sdkmanager 并在 CMD 中按回车试试。
    • 如果您收到'sdkmanager' is not recognized as an internal or external command, operable program or batch file.,您可能在添加系统环境变量的路径时犯了一个错误。解决这个问题。
    • 转到 Flutter sdk 文件夹(即 c:/src/flutter)并启动 flutter_console.bat 文件
    • 现在输入命令flutter doctor --android-licenses,它应该可以工作了。输入 y 并按 ENTER 接受所有内容
    • 别忘了运行flutter doctor

    修复 2:

    PS:只有在 Fix 1 不适合您的情况下!

    • 打开浏览器并转到 Command line tools only(页面底部)
    • 下载适合您平台的软件包
    • 解压缩,是的!您应该会看到 tools 文件夹
    • 解压后,将tools文件夹复制到C:\Users\USERNAME%\AppData\Local\Android\Sdk

      现在和上面的 Fix 1 一样,

    • 打开tools 文件夹并导航到bin

    • 复制文件夹路径(即C:\Users\USERNAME%\AppData\Local\Android\Sdk\tools\bin
    • 将该路径添加到环境变量中
    • 现在您应该可以在命令行中访问sdkmanager。输入sdkmanager 并在 CMD 中按回车试试。
    • 如果您收到'sdkmanager' is not recognized as an internal or external command, operable program or batch file.,您可能在添加系统环境变量的路径时犯了一个错误。解决这个问题。
    • 你还没有完成
    • 您下载的 SDK 平台工具可能已过时(从命令行运行 sdkmanager 命令时可以看到)
    • 现在让我们交给 Android Studio 来完成剩下的工作。重新启动 Android Studio,使其能够识别您添加的 tools 文件夹。
    • 重启后,Android Studio 应该会自动检测到过时的 Platform-tools 并提示您更新(您必须连接到互联网!)。
    • 如果没有出现更新提示
    • 在 Android Studio 中打开 SDK 管理器,
    • 转到更新
    • 点击Check Now
    • 你应该得到更新平台工具的提示

    修复 3:

    • 在修复 2 中执行所有操作
    • 打开环境变量,创建一个新变量JAVA_HOME并将值设置为JRE/bin(从Android studio安装位置获取它)
    • 打开命令行类型set JAVA_OPTS='-XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee' for windows & export JAVA_OPTS='-XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee' for Linux

    就是这样,您现在可以在命令行上运行flutter doctor --android-licenses;输入 y 并按 Enter 接受所有许可证。不要忘记运行flutter doctor

    这就解决了。我希望它也对你有用

    【讨论】:

      猜你喜欢
      • 2020-12-24
      • 2019-08-04
      • 2020-11-17
      • 2020-11-24
      • 2019-10-19
      • 2018-09-20
      • 2020-03-25
      • 1970-01-01
      • 2019-12-27
      相关资源
      最近更新 更多