首页 > 解决方案 > Flutter Doctor 无法识别我的 ANDROID_SDK 环境变量

问题描述

我从 ubuntu 的存储库中安装了 android-sdk,但它不包含sdkmanager 可执行文件,并且还不足以与颤振兼容,因此我从包含它的 snapd 安装了包装器。根据文档,我必须更改我的ANDROID_SDK_ROOT环境。变量,以便它与它一起工作。我还读到我需要设置ANDROID_HOME到目录(我认为它已被弃用但以防万一)所以我把它放在我的.profile

export ANDROID_SDK_ROOT=/snap/androidsdk/current/
export ANDROID_HOME=/snap/androidsdk/current/

然后我运行source .profile并重新启动了我的机器,但是颤振医生一直给我这个错误:

[!] Android toolchain - develop for Android devices (Android SDK version 27.0.1)
    ✗ Flutter requires Android SDK 29 and the Android BuildTools 28.0.3
      To update the Android SDK visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions.

我知道它使用了错误的路径,因为当我运行时flutter doctor --android-licenses收到此错误:

Android sdkmanager tool not found (/usr/lib/android-sdk/tools/bin/sdkmanager).

它指向我用 apt 安装的 SDK 的路径。我已经尝试过flutter config --android-sdk $PATH_TO_SDK,但这仍然没有改变任何东西。是否有一个包含 sdk 管理器的 ppa,这样我就不必尝试配置颤振来使用 snapd androidsdk 或者我缺少/做错了什么?

操作系统:Ubuntu 20.04

androidsdk (snapd) 版本:30(我不想用这个)

android-sdk (apt) 版本:25.0.0(也低于flutter的要求)

标签: androidflutterubuntudartandroid-sdk-tools

解决方案


您为 ANDROID_HOME 使用了错误的路径

Android Studio 不是必需的:

在使用 snap 安装 Flutter 并确保“/snap/bin”在您的路径中之后:

  1. sudo snap install androidsdk
  2. 作为普通用户:androidsdk "platform-tools" "platforms;android-29" "build-tools;30.0.2"

这会将您需要的 android sdk 工具安装到“$HOME/AndroidSDK”中

  1. 导出 ANDROID_HOME="$HOME/AndroidSDK"

  2. 扑医生


推荐阅读