颤动无法找到Android SDK

Dai*_*air 16 android flutter

flutter通过AUR安装了.我也aur/android-sdk 26.0.2-1安装了.当我跑步时,flutter run我得到:

Warning! This package referenced a Flutter repository via the .packages file that is
no longer available. The repository from which the 'flutter' tool is currently
executing will be used instead.
  running Flutter tool: /home/dair/.flutter-sdk
  previous reference  : /home/dair/flutter
This can happen if you deleted or moved your copy of the Flutter repository, or
if it was on a volume that is no longer mounted or has been mounted at a
different location. Please check your system path to verify that you are running
the expected version (run 'flutter --version' to see which flutter is on your path).

Unable to locate a development device; please run 'flutter doctor' for information about installing additional components.
Run Code Online (Sandbox Code Playgroud)

首先,我跑了flutter --version,并收到:

Flutter • channel alpha • https://github.com/flutter/flutter.git
Framework • revision e2f54df5ab (9 days ago) • 2017-06-02 10:43:54 -0700
Engine • revision 1f2aa07571
Tools • Dart 1.24.0-dev.3.0
Run Code Online (Sandbox Code Playgroud)

不知道究竟是什么意思"看看你的路上有哪个颤动".接下来我跑了flutter doctor,得到了:

[?] Flutter (on Linux, locale en_US.UTF-8, channel alpha)
    • Flutter at /home/christopher/.flutter-sdk
    • Framework revision e2f54df5ab (9 days ago), 2017-06-02 10:43:54 -0700
    • Engine revision 1f2aa07571
    • Tools Dart version 1.24.0-dev.3.0

[?] Android toolchain - develop for Android devices
    ? ANDROID_HOME = /opt/android-sdk
      but Android SDK not found at this location.

[?] Android Studio (version 2.3)
    • Android Studio at /usr/local/android-studio
    • Gradle version 3.2
    • Java version: OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[?] Connected devices
    • None
Run Code Online (Sandbox Code Playgroud)

但是,如果我进入,/opt/android-sdk我得到:

?  ~ cd /opt/android-sdk 
?  android-sdk ls
add-ons  build-tools  emulator  platforms  tools
Run Code Online (Sandbox Code Playgroud)

所以看起来它就在那里.我能找到的最接近的问题就是这个:React Native android build失败了.SDK位置未找到,但它似乎使用Mac而不是arch以及其他一些差异.我如何解决flutter doctor并运行我的应用程序?

kep*_*ung 33

如果您使用的是Android Studio 3,则可以通过转到文件 - >项目结构并选择平台sdk来配置平台SDK.

希望这对你有用.

在此输入图像描述


cod*_*ade 31

我在尝试flutter doctor命令时遇到了同样的问题:

在此输入图像描述

您可以使用以下命令仅针对当前终端实例SDK路径解决此问题设置:

#SDK exporting - this will solve your issue
export ANDROID_HOME=/home/{user}/Android/Sdk 

#Tools exporting - it can be need in your case
export PATH=/home/{user}/Android/Sdk/platform-tools:$PATH
export PATH=/home/{user}/Android/Sdk/tools:$PATH
export PATH=/home/{user}/Android/ndk-build:$PATH

#Flutter binary exporting
export PATH=/home/{user}/flutter/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

或者flutter config --android-sdk /path/to/android/sdk使用您的Android sdk路径导出.

我通过这种方式在我的机器上解决了它(Arch Linux,但这适用于任何Linux实例)flutter config --android-studio-dir /path/to/android/studio使用我的Android sdk路径导出 .

这将解决您的问题,但你可以需要的ANDROID_HOME,ANDROID_HOME,sdkplatform-tools路径太(当然,一切都需要先安装)在我的配置文件(在我的情况tools的文件,同样可以在您完成ndk-build等) :

source ~/.zshrc
Run Code Online (Sandbox Code Playgroud)

然后,我重新加载了我的配置文件(在我的.zshrc文件中,在你的情况下使用你的文件.eg .bashrc):

#SDK exporting - this will solve your issue
export ANDROID_HOME=/home/{user}/Android/Sdk 

#Tools exporting - it can be need in your case
export PATH=/home/{user}/Android/Sdk/platform-tools:$PATH
export PATH=/home/{user}/Android/Sdk/tools:$PATH
export PATH=/home/{user}/Android/ndk-build:$PATH

#Flutter binary exporting
export PATH=/home/{user}/flutter/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

之后.zshrc运行正常.

在此输入图像描述

  • `flutter config --android-sdk/path/to/android/sdk`这对我有用.谢谢 (11认同)

小智 19

我已经通过以下命令解决了这个问题 flutter config --android-sdk <sdk-location> ,你的 sdk 的位置在哪里。如果您在 Windows 上,请确保使用双引号。


Jud*_*ude 10

我终于解决了问题!!! 如果您不想使用ANDROID_HOME变量,则应该可以使用flutter config设置SDK路径。

Flutter提供命令以更新我们的Android SDK路径:

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

例如 flutter config --android-sdk C:\Users\user\AppData\Local\Android\Sdk


小智 10

对于 Windows: 在 Android Studio 中,从以下位置获取路径:外观和行为 > 系统设置 > Android SDK > Android SDK 路径

如果您有编辑路径并将 sdk 重新安装到其他位置,请确保您的路径中不包含任何空格

在那之后,

flutter config --android-sdk {path}
flutter doctor --android-licenses
Run Code Online (Sandbox Code Playgroud)

你准备好了!


Sun*_*tam 8

要获取 Android SDK 路径 - 在 Android Studio 中打开 Flutter 项目 - 转到文件 > 项目结构 > SDK 位置。复制位置

设置 Android SDK 路径 - 在终端中输入 flutter config --android-sdk /path/that/you/just/copied


小智 7

我在寻找解决方案时遇到了很多困难,最后我通过配置项目 SDK
文件 -> 项目结构然后选择 sdk 平台找到了解决方案。


小智 5

我已经解决了!我之前将我的 android SDK 放在 F:/androidsdk 中,所以当我运行“ flutter config ”时,android sdk 没有链接。要将 flutter 与 android sdk 链接,只需键入以下命令:

flutter config --android-sdk /path/to/android/sdk
Run Code Online (Sandbox Code Playgroud)

我只是改变了这个

flutter config --android-sdk F:/androidsdk
Run Code Online (Sandbox Code Playgroud)

我希望这是有效的。


Sha*_*ain 5

转到项目结构并确保选择了 sdk 版本。项目结构图


Col*_*son 3

Flutter需要Android SDK平台工具才能使用adb命令行工具。

看起来您已经安装了Android SDK,但尚未安装平台工具。

这里是arch 的android-sdk-platform-tools Aur 包以及如何安装它的指南。

也许可以改进错误消息,以表明我们实际上缺少 Android SDK 平台工具而不是 Android SDK 本身。如果您愿意,请随时发送拉取请求或提出问题