Позвольте мне сначала уточнить ваши комментарии: я не понизил голос, но ваша формулировка оставляет желать лучшего. Android Studio - это не моя любимая вещь, это всего лишь инструмент, которым я пользуюсь из-за отсутствия более удобного. То, что вы испытываете, не является проблемой установки Android Studio, это проблема набора инструментов Android.
Что происходит?
Ваш инструментарий Android не работает.
Что делать?
Я бы сделал несколько шагов здесь, чтобы проверить, откуда возникла ваша проблема, поскольку трудно определить, не имея возможности воспроизвести ее. Вместо этого я расскажу вам, какие шаги я бы выполнил , если бы обнаружил свежую установку macOS (или любой другой ОС, поскольку я больше не запускаю macOS).
- Загрузить Android Studio из Google .
- Android Studio поставляется с некоторыми базовыми компонентами, но по большей части рекомендуется заполнить недостающие ключи с помощью встроенного SDK Manager. Оно доступно в самом первом приветственном всплывающем окне Android Studio с надписью «Добро пожаловать в Android Studio». Выберите «Настроить» внизу, а затем «Менеджер SDK»:
- Обратите внимание на мое местоположение, где я все это сохранил; это должно быть установлено как переменная окружения
ANDROID_HOME
, и некоторые из этих папок должны быть в вашем пути (для более легкого доступа к любому инструменту, особенно к команде adb
). Поэтому, если вы используете BASH (по умолчанию для macOS High Sierra), убедитесь, что вы добавили его в .bashrc
или .bash_profile
или в любом месте, где вы настроили свой путь .
export ANDROID_HOME="$HOME/Android/Sdk"
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
Вы поняли.
- К сожалению, вам также нужна Java , что MacOS больше не предоставляет в наши дни. Таким образом, у вас есть куча вариантов здесь. Вы можете перейти на Oracle загрузок для Java 8 и выбрать правильный для вашей среды, или вы можете установить OpenJDK . В любом случае, если вам нужно увидеть, где находятся ваши установки Java, у macOS есть удобный инструмент под названием
java_home
. Вы можете прочитать больше об этом в этом сообщении StackOverflow .
java_home
не существует в моем Linux, но я знаю, где находится мой java, и я вижу его, потому что я добавил эту переменную окружения, которая необходима:
$ echo $JAVA_HOME
/usr/lib/jvm/java-8-openjdk-amd64
Теперь, когда у меня есть этот путь, я могу запустить двоичные файлы Java:
$ java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-0ubuntu1.19.04.2-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)
А как насчет лицензий
Менеджер SDK может утверждать лицензии из командной строки в полуавтоматической форме, потому что это то, что используют среды непрерывной интеграции. Если ваша среда CI создается заново для каждого конвейера (чтобы каждый раз все работало заново), то им также необходимо загрузить SDK и принять лицензии. Вот где лицензия менеджера SDK входит в картину.
Трудно сказать, что конкретно происходит с вами, но, будьте уверены, это не нормальное явление в моем опыте. В основном легко понять, что все, что ему нужно, это файл в нужном месте, чтобы перестать просить одобрения, а что нет. Но все это не требуется, если вы используете пользовательский интерфейс SDK Manager, поскольку он предложит вам принять лицензии прямо в пользовательском интерфейсе.
После того, как вы настроили JAVA_HOME, ANDROID_HOME и т. Д. Если вы наберете adb --version
, он должен работать независимо от того, где вы находитесь:
$ adb --version
Android Debug Bridge version 1.0.41
Version 29.0.1-5644136
Installed as /home/martin/Android/Sdk/platform-tools/adb
После всего этого, и при условии, что указатель Android Studio SDK указывает на правильное место, тогда вам будет хорошо идти.
Имейте в виду, что проекты могут выбрать использование встроенного JDK (и на самом деле он говорит, что рекомендуется), поэтому, если Java работает для вас, игнорируйте способ установки Java :) (я предпочитаю использовать мой Собственная копия JDK, я к этому привык). Помните, что это per-project
параметр.
Как насчет HAXM?
HAXM является проприетарным инструментом Intel, и все, что делает Android Studio / SDKManager, - это загрузка, но не установка (насколько я помню).В любом случае, официальный Google пытается установить его на macOS , четко скажем, на шаге 4 (и я цитирую приведенную выше ссылку):
После завершения загрузки запуститеустановщик.Как правило, вы можете найти установщик в следующем месте: sdk / extras / intel / Hardware_Accelerated_ExecutionManager / IntelHAXMversion.dmg
UPDATE
HAXM: этоIntel Tool и имеет последствия для безопасности и требует повышенных разрешений (в случае macOS, для установки расширения ядра) среди прочего, поэтому вы должны завершить установку самостоятельно.Единственное, что SDK Manager использовал для , это просто скачивал файл, я не думаю, что он запускает установку самостоятельно.Установить HAMX теперь довольно просто;Вы даже можете скачать его с Intel и установить его самостоятельно.
Что касается вашего Homebrew, я не уверен, что происходит, но я не использовал Flutter для разработки Android, поэтому моя помощь здесь будет ограниченав этом отношении.Я бы попытался brew uninstall
, что бы здесь ни противоречило, или хотя бы попытался выяснить, почему Флаттер указывает на неправильный SDK.Примите мой совет по флаттеру, исходящий от того, кто еще не установил Флаттер и просто догадывается без доказательств :)