Подтвердить что ты не робот

Android SDK не может быть обнаружен флаттером

Я установил 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.

Сначала я запустил 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

Не уверен, что именно означает "увидеть, какой трепет на вашем пути". Далее я запустил 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

Однако, если я перейду в /opt/android-sdk я получу:

➜  ~ cd /opt/android-sdk 
➜  android-sdk ls
add-ons  build-tools  emulator  platforms  tools

Похоже, что это там. Самый близкий вопрос, который я смог найти, это: React Native. Сборка Android не удалась. Местоположение SDK не найдено, но, похоже, он использует Mac, в отличие от arch, а также некоторых других отличий. Как я могу разрешить flutter doctor и запустить мое приложение?

4b9b3361

Ответ 1

Если вы используете Android Studio 3, вы можете настроить SDK своей платформы, перейдя в Файл → Структура проекта и выберите SDK своей платформы.

Надеюсь, что это работает для вас.

enter image description here

Ответ 2

Я работал с той же самой проблемой, когда я пробовал команду flutter doctor:

enter image description here

Проблема немного ясна, это происходит потому, что флаттер не находит путь для вашего Android SDK.

Есть два способа решить это:

  • Вы можете решить эту проблему только для своего текущего экземпляра пути SDK терминала с помощью следующих команд:

    flutter config --android-sdk/path/to/android/sdk

    flutter config --android-studio-dir/path/to/android/studio

  • Или сохранить его навсегда, экспортировав ANDROID_HOME с вашим Android SDK-путем.

Я решил экспортировать ANDROID_HOME на моем компьютере (Arch Linux, но это работает для любого экземпляра Unix).

Это решит вашу проблему, но вам могут понадобиться sdk, platform-tools, tools и пути ndk-build (конечно, все должно быть сначала установлено) в файле моего профиля (в моем случае файл .zshrc, то же самое можно сделать на вашем .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

Затем я перезагрузил файл моего профиля (в моем случае это файл .zshrc, используйте ваш файл в вашем случае .eg .bashrc):

source ~/.zshrc

После этого flutter doctor работает правильно.

enter image description here

Ответ 3

Я наконец-то решил проблему !!! Вы должны иметь возможность установить путь SDK, используя конфигурацию флаттера, если вы предпочитаете не использовать переменную ANDROID_HOME.

Flutter предоставляет команду для обновления пути Android SDK:

Используйте flutter config --android-sdk <path-to-your-android-sdk-path>

например, flutter config --android-sdk C:\Users\user\AppData\Local\Android\Sdk

Ответ 4

Я решил эту проблему, выполнив следующую команду: flutter config --android-sdk <sdk-location> Где находится место для вашего sdk. Если вы находитесь в окнах, обязательно используйте двойные кавычки.

Ответ 5

Flutter требует инструментов платформы Android SDK, чтобы он мог использовать инструмент командной строки adb.

Похоже, вы установили Android SDK, но вы еще не установили платформенные инструменты.

Вот пакет android-sdk-platform-tools Aur для арки и руководство по его установке.

Возможно, сообщение об ошибке может быть улучшено, чтобы указать, что на самом деле у нас отсутствуют инструменты платформы Android SDK, а не сам Android SDK. Если вы хотите, не стесняйтесь отправлять запрос на вытаскивание или открывать проблему.

Ответ 6

я решил! я положил свой Android SDK раньше в F: /androidsdk, поэтому, когда я запускаю " flutter config " Android SDK не связан. Чтобы связать флаттер с Android SDK просто введите команду ниже:

flutter config --android-sdk /path/to/android/sdk

я просто изменился с этим

flutter config --android-sdk F:/androidsdk

Я надеюсь, что это работает.

Ответ 7

Я много страдал, пытаясь найти решение, и, наконец, я нашел решение, настроив SDK проекта
Файл → Структура проекта, затем выберите платформу SDK.

Ответ 8

Это работает для меня

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

Ответ 9

Он говорит, что ваш проект использует два разных пути flutter-sdk. Существует два места, где определены пути sdk.

  1. Настройка (Настройка> Язык и рамки> Флатер> Траектория SDK для флаттера)

enter image description here

  1. local.properties в корневой папке

enter image description here

Оба эти места должны содержать один и тот же путь к sdk.Compile with flutter run !! сделанный !!

Ответ 10

Я смог подключить свое устройство, но проблема заключалась в том, что я не смог подключить другие устройства, которые я пытался выполнить вышеописанным способом (вслепую, я даже не заменил свой путь на "путь"), после некоторой модификации в Android SDK Pat... Теперь я получаю ошибку Android Studio не найден

enter image description here

Ответ 12

Я установил свой Android SDK вручную в Windows 10 с помощью командной строки, я думаю, что это не сильно изменится в Linux, и я смог устранить ошибки такого рода, когда пытался настроить свою среду разработки, если вы хотите чтобы решить ее, как я, просто выполните следующие шаги, которые я опубликовал в комментарии GitHub в связанной проблеме:

https://github.com/flutter/flutter/issues/19805#issuecomment-478306166

Я надеюсь, что это может помочь кому-нибудь это нужно! До свидания!

Ответ 13

Вы можете просто добавить

настройка флаттера --android-sdk "путь"

в консоли флаттера, но из-за пробела в URL, вы должны набрать "ваш путь", чтобы установить его правильно

обновить изображение: enter image description here

Ответ 14

Чтобы получить путь к Android SDK, откройте проект Flutter в Android Studio. Выберите "Файл"> "Структура проекта"> "Расположение SDK". Скопируйте местоположение

Чтобы установить путь к Android SDK, flutter config --android-sdk/path/that/you/just/copied терминала flutter config --android-sdk/path/that/you/just/copied

Ответ 15

Эта проблема возникает, главным образом, при использовании устройства или эмулятора без платформы Android SDK.

любой эмулятор, который вы используете, должен проверить, что у вас установлен Android SDK в вашей студии Android.

проверьте эти и соответствующие версии платформы Android sdk

если он говорит, что не установлен, установите их, а затем снова попробуйте флаттера.