Не находить андроид sdk (Unity)
Ошибка:
Invalid command android
UnityEditor.HostView:OnGUI()
CommandInvokationFailure:
Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details.
C:/Program Files/Java/jdk1.8.0_121\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="C:/Users/great/AppData/Local/Android/Sdk\tools" -Dfile.encoding=UTF8 -jar "C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" -
stderr[
Error:Invalid command android
]
stdout[
]
exit code: 64
UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandInternal (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandSafe (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.HostView:OnGUI()
Ошибка построения игрока:
CommandInvokationFailure: Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details.
C:/Program Files/Java/jdk1.8.0_121\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="C:/Users/great/AppData/Local/Android/Sdk\tools" -Dfile.encoding=UTF8 -jar "C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" -
stderr[
Error:Invalid command android
]
stdout[
]
exit code: 64
Скриншот:
![screenshot]()
Ответы
Ответ 1
У меня такая же проблема.
Я исправил версию версии инструмента для Android sdk.
Этапы.
Ответ 2
Проблема связана с несовместимостью с новейшими инструментами построения Android.
Для MacOS здесь один лайнер, который заставит его работать на вас:
cd $ANDROID_HOME; rm -rf tools; wget http://dl-ssl.google.com/android/repository/tools_r25.2.5-macosx.zip; unzip tools_r25.2.5-macosx.zip
Ответ 3
1- Просто откройте https://developer.android.com/studio/index.html
2- прокрутите вниз до нижней части этой страницы
3- загрузить последнюю версию инструментов для вашей ОС (например, tools_r25.2.3-windows.zip)
4 Разархивируйте его
5- Удалить папку Инструменты из предыдущей папки Android Sdk
6- Скопируйте новую папку инструменты в папку Android SDK, как показано на рисунке:
![введите описание изображения здесь]()
Ответ 4
Unity 5.6.1/2017.1 исправляет проблему совместимости Android SDK Tools 25.3.1+. Это отмечено в Unity bug tracker в issue 888859 и их выпуск 5.6.1 заметки.
Ответ 5
Это шаги, которые в конечном итоге спомогли мне...
Установите JDK jdk1.8.0_131 (да, это конкретная версия, а не более поздняя версия) и установите его в качестве пути JDK в Unity.
Удалить папку android sdk tools: [android_sdk_root]/tools
Загрузите SDK Tools v25.2.5 (эта конкретная версия) с веб-сайта http://dl-ssl.google.com/android/repository/tools_r25.2.5-windows.zip
Извлеките папку инструментов из этого архива в корневой каталог Android SDK
Создай свой проект
Ответ 6
Для пользователей Mac OS:
Перейдите в папку Android SDK и удалите папку инструментов (я рекомендую сделать копию перед ее удалением, если это решение не решит проблему за вас)
Затем загрузите папку инструментов здесь:
http://dl-ssl.google.com/android/repository/tools_r25.2.5-macosx.zip
Вы можете найти все инструменты zip версию здесь:
https://androidsdkoffline.blogspot.fr/p/android-sdk-build-tools.html
Затем разархивируйте загружаемый файл и поместите его в папку Android SDK.
Надеюсь, это поможет
Ответ 7
Простое решение: установите переменную среды USE_SDK_WRAPPER = 1 или взломайте инструменты /android.bat, чтобы добавить строку "set USE_SDK_WRAPPER = 1". Это предотвращает появление android.bat от подсказки "y/n", что и путает Unity.
Ответ 8
Удалить папку "tools" для android sdk: [Ваш Android SDK root]/tools → tools
Загрузите SDK Tools: http://dl-ssl.google.com/android/repository/tools_r25.2.5-windows.zip
Распакуйте это в Android SDK root
Создайте свой проект
После этого у меня это не сработало, мне пришлось
Перейти в архивы Java (http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html)
Найдите выпуск jdk-8u131.
Примите лицензионное соглашение, создайте учетную запись и загрузите релиз.
Установите его и определите его как путь JDK в Unity.
источник: https://www.reddit.com/r/Unity3D/comments/77azfb/i_cant_get_unity_to_build_run_my_game/
Ответ 9
Я решил проблему, удалив JDK 9.
Ответ 10
Пользователи Linux:
cp -r Android AndroidUnity
cd AndroidUnity/Sdk
rm -rf tools
wget http://dl-ssl.google.com/android/repository/tools_r25.2.5-windows.zip
unzip tools_r25.2.5-windows.zip
В настройках Unity измените эту недавно созданную папку SDK.
Ответ 11
В моем случае я пытался собрать и получить APK для старого проекта Unity 3D (чтобы я мог играть в игру на своем телефоне Android). Я использовал самую последнюю версию Android Studio и все пакеты SDK, которые я мог загрузить через SDK Manager в Android Studio. Пакеты SDK были расположены в
C: /Users/Онат/AppData/Local/Android/Sdk
И сообщение об ошибке, которое я получил, было таким же, за исключением версии JDK (Java Development Kit) "jdk-12.0.2". JDK был расположен в
C:\Program Files\Java\jdk-12.0.2
И переменная среды в Windows была JAVA_HOME: C:\Program Files\Java\jdk-12.0.2
После 3 часов исследований я обнаружил, что Unity не поддерживает JDK 10. Как сказано в https://forum.unity.com/threads/gradle-build-failed-error-could-not-determine-java-version-from-10-0-1.532169/. Мое предложение:
1. Удалите ненужный JDK, если он у вас уже установлен. https://www.java.com/tr/download/help/uninstall_java.xml
2. Привести к http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
3. Войдите/откройте учетную запись Oracle, если вы еще не вошли в систему.
4. Загрузите более старую, но функциональную версию JDK 8 для вашего компьютера (32-битная /64-битная, Windows/Linux и т.д.)
5. Установите JDK. Запомните путь установки. (https://docs.oracle.com/cd/E19182-01/820-7851/inst_cli_jdk_javahome_t/)
6.Если вы используете Windows, откройте переменные среды и измените путь Java с помощью правой кнопки мыши Мой компьютер/Этот компьютер> Свойства> Дополнительные параметры системы> Переменные среды> Создать> Имя переменной: JAVA_HOME> Значение переменной: [YOUR JDK Path, Mine was "C:\Program Files\Java\jdk1.8.0_221"]
7. В Unity 3D нажмите "Правка"> "Установки"> "Внешние инструменты" и введите путь JDK (у меня было "C:\Program Files\Java\jdk1.8.0_221").
8. Также в том же всплывающем окне отредактируйте SDK Path. (Загрузите его из Android Studio> SDK Manager> Android SDK> Расположение Android SDK.)
9. При необходимости перезагрузите компьютер, чтобы изменения вступили в силу.
Ответ 12
Просто добавив к Choi Yonggui ответ, который мне тоже помог, так как ant устарел от v2.3
Перечисление изменений, сделанных с помощью инструментов версии 2.5.2 - 2.3, может показаться полезным
Изменения:
Android-эмулятор удаляется из этого пакета и перемещается в другой каталог SDK. Ознакомьтесь с новыми примечаниями к выпуску Android Emulator. Это изменение обратно совместимо со старыми версиями Android Studio.
Функция командной строки android avd заменена новым инструментом avdmanager.
Устаревшие/устаревшие инструменты были удалены:
- Android
- ddms (вместо этого см. Использование DDMS)
- draw9patch (вместо этого нарисуйте 9-патч)
- hierarchyviewer (вместо этого просмотрите профиль своего макета с помощью средства просмотра иерархии)
- traceview (вместо этого просмотрите профилирование с помощью Traceview и dmtracedump)
- ant скрипты
Шаблоны проектов и действий
- Исполняемые файлы были перенесены в bin/:
- jobb
- ворса
- monkeyrunner
- screenshot2
- Uiautomatorviewer
Улучшенный sdkmanager:
- Просмотр и принятие всех лицензий из командной строки
- Улучшен список пакетов в режиме verbose.
https://developer.android.com/studio/releases/sdk-tools.html