Flutter 找不到 android sdk

Posted

技术标签:

【中文标题】Flutter 找不到 android sdk【英文标题】:Flutter does not find android sdk 【发布时间】:2018-08-16 22:21:26 【问题描述】:

我刚刚尝试安装flutter,因为我已经安装了android studio和android sdk,所以我只是按照flutter的安装。这是我的问题:当我运行时

flutter doctor

它告诉我

  [√] Flutter (Channel beta, v0.1.5, on Microsoft Windows [Version 10.0.16299.248], locale en-US)
    • Flutter version 0.1.5 at C:\Users\Name\git\flutter
    • Framework revision 3ea4d06340 (2 weeks ago), 2018-02-22 11:12:39 -0800
    • Engine revision ead227f118
    • Dart version 2.0.0-dev.28.0.flutter-0b4f01f759

[X] Android toolchain - develop for Android devices
    X ANDROID_HOME = C:\Users\Name\AppData\Local\Android\sdk\Android
      but Android SDK not found at this location.

[√] Android Studio (version 3.0)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)

这告诉我颤振没有找到我的 Android sdk(即使它也是 android studio 使用的路径 - 并且 android studio 工作正常)

我已经尝试重新安装 sdk,但没有成功。

非常感谢您对此提供的任何帮助。

【问题讨论】:

【参考方案1】:

我认为这是这个已知问题https://github.com/flutter/flutter/issues/13750

您需要手动修复 SDK 的路径,直到修复此问题 在文件中

my_flutter_project/android/local.properties

更新

$ANDROID_HOME\sdk\tools$ANDROID_HOME\sdk\platform-tools 添加到PATH 环境变量中。

【讨论】:

首先,你的回答非常重要。我不完全了解 local.properties 文件夹的位置。 在你颤动的项目主管中(my_flutter_project 是我假设的名称)有一个包含该文件的 android 子目录。 我只创建了一个flutter项目,它只包含一个目录(称为.idea),其中包含一个xml文件(称为工作空间)。当我在 android studio 中创建这个项目时,没有文件可以访问。 这听起来不像是您使用flutter create 创建的。我猜你是从 IDE 创建的,但出了点问题。您可以从命令行尝试吗? 是的,但我不明白为什么它告诉我它没有找到我的 sdk - 因为它正在与 android studio 一起工作,我什至删除了它并重新下载了它。路径也是我新下载的sdk和android studio使用的一样【参考方案2】:

我在 Flutter Doctor 命令上遇到以下问题。

未找到 X And​​roid SDK 文件:..\Android\sdk\platforms\android-28\android.jar。

要解决这个问题,只需转到 Tools=> Android Sdk =>Update Sdk Platform 解决问题。(我安装了 SDK 28)。

check flutter document for this issue

【讨论】:

【参考方案3】:

请首先检查您的最新 sdk 第一步:

第二步:

现在运行

运行颤振医生--android-licenses 对每个协议按 Y

运行颤振医生 它会正常工作的。

【讨论】:

您的回答并没有说明用户应该做什么。您的回答表明他们应该根据您的图像更新所有 SDK 和工具。 我不确定我到底做了哪些让颤振医生最终促使我接受许可证的行为,但是是的,现在一切终于过去了。我相信它可能一直在安装SDK平台api级别28,Android SDK工具(初始安装只下载了Platform-Tools。一旦安装了这些,我又重新运行了flutter doctor --android-licenses,一切都解决了。这个过程(为了能够开发 Flutter)需要改进,恕我直言。值得付出努力(修辞)吗? 谢谢。不知何故,我跳过了安装平台工具..此后工作【参考方案4】:

Flutter say Sd​​k build tool version(exp:android toolchain - develop for android devices (android sdk 28.0.3)) version=28.0.3 转到主页/用户名/Android/Sdk/build-tools 删除此版本(28.0.3)并修复错误

【讨论】:

【参考方案5】:

Flutter 提供了更新 Android SDK 路径的命令:

使用flutter config --android-sdk <path-to-your-android-sdk-path>

【讨论】:

那行得通。小补充。我在 Windows 10 的用户文件夹中找到了 sdk,如下所示:flutter config --android-sdk "C:\Users[your Local user folder]\AppData\Local\Android\Sdk" 是的,您需要在输入时加上引号。例如:flutter config --android-sdk "C:\Program Files (x86)\Android\android-sdk" 非常感谢。经过一个小时找出问题所在,现在终于奏效了! 伙计,非常感谢,它帮助了 :) 为什么我们需要修复一些没有错的东西......他们不能在设置过程中添加该语句吗?所有这些小事真的让我很烦。【参考方案6】:

首先打开 Android SDK Manager 并确保安装了所需的 SDK。

现在打开 SDK 管理器,复制 SDK 路径。打开cmd

cd C:\Users\your-username\AppData\Local\Android\Sdk\build-tools

现在再次将目录更改为构建工具中的内部文件夹。 检查 aapt.exe 文件的存在或名称问题。

【讨论】:

【参考方案7】:

选择要安装的文件夹(我称之为BASE_PATH)并使用以下命令安装带有flutter的SDK:

安装 SDK

cd $BASE_DIR
mkdir android-sdk
cd android-sdk
wget https://dl.google.com/android/repository/commandlinetools-linux-6200805_latest.zip
unzip commandlinetools-linux-6200805_latest.zip
./tools/bin/sdkmanager --sdk_root=$(pwd) "build-tools;28.0.3" "emulator" "platform-tools" "platforms;android-28" "tools"

我为 SDK 使用了一个单独的文件夹,因为它会添加父文件夹。

安装 Flutter

cd $BASE_DIR
wget https://storage.googleapis.com/flutter_infra/releases/stable/linux/flutter_linux_v1.12.13+hotfix.8-stable.tar.xz
tar xvf flutter_linux_v1.12.13+hotfix.8-stable.tar.xz

导出变量(您可以将它们添加到您的.bashrc

export ANDROID_SDK=$BASE_DIR/android-sdk
export ANDROID_PATH=$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools
export FLUTTER=$BASE_DIR/bin
export PATH=$PATH:$ANDROID_PATH:$FLUTTER

检查!

flutter doctor

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v1.12.13, on Linux, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[!] Android Studio (not installed)
[✓] VS Code (version 1.31.1)
[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

【讨论】:

我必须做 flutter config --android-sdk="$ANDROID_SDK" (github.com/flutter/flutter/issues/90042#issuecomment-919075876) 才能让它工作【参考方案8】:

对我来说,添加 Android SDK 路径并没有帮助。

我删除了我所有的 SDK(基本上只是删除了那个 Android 文件夹。使用此路径“C:\Users\your_user_name\AppData\Local\Android”来定位它。)

然后我使用 android studio 重新安装了所有必需的 SDK。 (一定要安装1个以上的SDK,不知道为什么只安装1个就不行了)。

然后,如果我运行 Flutter Doctor,一切都会完美运行。

【讨论】:

【参考方案9】:

您必须将 ANDROID_HOME 变量设置为 SDK。

按名称创建一个新变量并将其设置为安装目录。

确保 SDK 不低于 c 驱动器或任何 Windows 根驱动器的 2 个子文件夹。

【讨论】:

【参考方案10】:

我通过以下步骤解决了这个问题,

1)转到->系统环境->环境变量->系统变量

2) 创建新变量名称 ANDROID_HOME 和值 D:\Androidsdk\tools(自定义 android sdk 路径)。

3) 使用“;”在 Path 变量值中连接此路径 D:\Androidsdk\platform-tools。 (也在系统变量中)

4) 就是这样,重新启动 PC 以应用更改并重试——flutter Doctor。

【讨论】:

【参考方案11】:

打开工具=> Android Sdk 单击 SDK 工具选项卡 => 检查显示包详细信息并检查所有 28 个 SDK 版本 安装它并解决问题

【讨论】:

【参考方案12】:

在我的 SDK 文件夹中有一个空文件夹 (/build-tools/29.0.0)

我删除了它,它工作正常

【讨论】:

这在 Mac 机器上对我有用。只需删除空文件夹。谢谢 Xero【参考方案13】:

首先从您的终端运行颤振升级, 如果出现以下错误,

ANDROID_HOME = C:\Users\Name\AppData\Local\Android\sdk\Android
      but Android SDK not found at this location.
    首先进入android studio,设置->系统设置->点击展开箭头 然后转到Android SDK选项并将相应的SDK添加到项目中,然后转到项目结构并将相应的SDK添加到项目结构中 然后在终端运行flutter upgrade

【讨论】:

【参考方案14】:

如果您没有找到正确的 SDK 路径, 1. 打开安卓工作室 2. 转到工具 3. 进入 SDK 管理器 4. 你会找到“Android SDK Location”

复制路径并编辑“环境变量” 之后,重新启动并运行cmd。 然后,运行“颤振医生” 希望,它会工作!

【讨论】:

【参考方案15】:

我花了很多时间解决这个问题。

最终起作用的是在 android studio、sdk 工具中进行项目设置,取消选中隐藏过时的包并安装 sdk 工具过时的包。

然后运行flutter doctor --android-licenses,然后flutter doctor 在我的android 工具链上显示一个绿色勾号。

希望这对某人有所帮助。

【讨论】:

另一件毫无意义的事情......如果它不起作用,为什么它是活动的。【参考方案16】:

对于 Mac 用户,

昨天还好好的,现在坏掉了。我能够修复它。

我的问题是 ANDROID_HOME

// This is wrong. No idea how it was working earlier.
ANDROID_HOME = Library/Android/sdk 

如果您也这样做,请将其更改为:

ANDROID_HOME = /Users/rana.singh/Library/Android/sdk 

.bash_profile

export ANDROID_HOME=/Users/rana.singh/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

【讨论】:

【参考方案17】:

我们需要手动添加 Android SDK。 flutter.io/download中的说明说Android Studio 3.6或更高版本需要手动安装SDK。为此,

    打开 Android Studio SDK 管理器Android SDK 选项卡中,取消选中 Hide Obsolete Packages 检查 Android SDK 工具(已过时)

请参考Android Setup Instructions。

【讨论】:

【参考方案18】:

Flutter 旨在使用已安装的最新 Android 版本。因此,如果你没有完整下载最新的 Android,Flutter 会尝试使用它。

所以要么完成安装,要么删除整个安装。您可以在以下位置找到 Android 版本:/home/user/Android/Sdk/platforms/android-29/android.jar

【讨论】:

【参考方案19】:

有效的是Tools->Flutter->在Android studio中打开Android模块,对我来说插件flutter_email_sender给出了这个错误,所以我将local.properties文件复制到其中并且构建成功。

或者 打开终端 运行触摸~/.bash_profile; open ~/.bash_profile

export ANDROID_HOME=/Users/<macusername>/Library/Android/sdk
export ANDROID_SDK_ROOT=/Users/<macusername>/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

android studio 终端

中运行 source ~/.bash_profile

【讨论】:

【参考方案20】:

Flutter 提供了更新 Android SDK 路径的命令:

flutter config --android-sdk < path to your sdk >

如果您遇到这个问题 --> sdk 文件在 android-sdk\build-tools\28.0.3\aapt 中找不到。

你可能没有安装这个Api级别的构建工具,可以通过这个链接安装https://androidsdkmanager.azurewebsites.net/Buildtools

【讨论】:

【参考方案21】:

这解决了我的问题。

第 1 步:在搜索类型中显示隐藏文件并启用它。 第二步:进入C目录> users> 第 3 步:导航到 AppData>Local>Android>Sdk 第 4 步:复制此文件夹的路径 第 5 步:打开 power-shell 并输入:

flutter config --android-sdk "C:\Users\&lt;folder under your name&gt;\AppData\Local\Android\Sdk"

【讨论】:

【参考方案22】:
export ANDROID_HOME=$HOME/Development/android_sdk

export PATH=$PATH:$ANDROID_HOME/platform-tools
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/cmdline-tools
export PATH=$PATH:$ANDROID_HOME/build-tools


export PATH=$PATH:$HOME/pathto/flutter_sdk/bin

`PWD 我猜这行不通

在 .zprofile 或 .zshrc 中进入 mac 的相应用户目录

【讨论】:

【参考方案23】:

我在windows中也有同样的问题,而且是在授权android许可证时出现的。扑医生--android-licenseserror

为了解决这个问题,我们只需要安装 Android SDK 命令行工具(最新) 打开Android Studio->files->Settings->Appearence & Behavior->System Settings->Android SDK->SDK Tools->(install) Android SDK command-line Tools(Latest)

【讨论】:

【参考方案24】:

转到 project/android/local.properties 中的 local.properties 改变这个

sdk.dir=C:\\Users\\ACER\\AppData\\Local\\Android\\sdk

sdk.dir=A:\\yoursdkfolder\\sdk

【讨论】:

【参考方案25】:

本文介绍了如何通过 Android Studio 解决,因为您在使用 Android Studio 时无需单独安装 SDK Manager。 参考:https://flutter-examples.com/flutter-command-line-tools-component-is-missing/

    打开 Android Studio 更多操作 >>> SDK 管理器 Android SDK >>> SDK 工具 勾选“Android SDK命令行工具(最新)>>>确定 重新启动命令行窗口并再次运行flutter doctor 进行验证

【讨论】:

【参考方案26】:

我通过以下步骤消除了错误:

    [!] Android 工具链 - 为 Android 设备开发(Android SDK 版本 30.0.3) X And​​roid SDK 文件未找到:C:\Users\aksha\AppData\Local\Android\sdk\build-tools\30.0.3 在build-tools里面删除这个文件夹(因为没有正确安装错误)。 为了解决这个问题,我们必须取消选中所有最新的平台(android (S)12 等),然后在重启工作室后单击应用,并再次检查所有这些平台,至少一个最新的并应用(ok)。李> 打开Android Studio->文件->设置->外观和行为->系统 设置->Android SDK->SDK 平台(最新)
    运行 flutter 命令以接受许可证。 (输入 Y 然后全部输入) 颤振医生--android-licenses 运行颤振医生(全部完成)。

【讨论】:

【参考方案27】:

我尝试了最佳答案,但对我不起作用。

Running flutter doctor-v 给了我一个有效的提示。

只需运行flutter config --android-studio-dir=

它会要求你再次重启 VS Code。

在 VS Code 中删除终端并重启 VS Code。

再次运行flutter doctor-v,问题已为我解决。

【讨论】:

【参考方案28】:

我没有安装 Android Studio,只有 VS Code 并在 C:\Android\ 中提取 sdk。

对于解决方案,我直接设置路径:

flutter config --android-sdk "C:\Android\cmdline-tools\latest\bin"

【讨论】:

以上是关于Flutter 找不到 android sdk的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 找不到 android sdk(图文详解)

在指定位置找不到 Flutter SDK - 在 Android Studio 中

使用 Agora SDK 的 Flutter Android 项目:'错误:找不到符号'

安装flutter时如何修复“在此位置找不到Android SDK”错误?

Android Studio安装flutter插件后找不到设备(no devices)

在颤振医生中找不到Android SDK文件adb(命令提示符)