Ионный в Windows: Android SDK установлен. Все еще получите "Ошибка: пожалуйста, установите цель Android:" android-22 "

Мне удалось сломать мою ранее рабочую версию ионического окружения. Например: я загружаю демонстрационный проект "sidemenu" и запускаю "ионную платформу add android" без каких-либо проблем. Когда я пытаюсь запустить "ионную сборку", я получаю следующее сообщение:

$ ionic build
Running command: "c:\Program Files\nodejs\node.exe" h:\git\Absolut\hooks\after_p
repare\010_add_platform_class.js h:/git/myapp add to body class: platform-android
Running command: cmd "/s /c "h:\git\Absolut\platforms\android\cordova\build.bat"
"
[Error: Please install Android target: "android-22".

Hint: Open the SDK manager by running: c:\Users\nicsj\AppData\Local\Android\android-sdk\tools\android.BAT
You will require:
1. "SDK Platform" for android-22
2. "Android SDK Platform-tools (latest)
3. "Android SDK Build-tools" (latest)]
ERROR building one of the platforms: Error: cmd: Command failed with exit code 2

You may not have the required environment or OS to build this project
Error: cmd: Command failed with exit code 2
    at ChildProcess.whenDone (c:\Users\nicsj\AppData\Roaming\npm\node_modules\co
rdova\node_modules\cordova-lib\src\cordova\superspawn.js:134:23)
    at ChildProcess.emit (events.js:110:17)
    at maybeClose (child_process.js:1015:16)
    at Process.ChildProcess._handle.onexit (child_process.js:1087:5)

Я не понимаю, что вызывает сообщение об ошибке, так как Android-22 уже установлен. У меня есть SDK Platform-tools и build-tools. Они находятся на PATH:

.../c/Program Files (x86)/Java/jdk1.7.0_71/bin:/c/Users/nicsj/AppData/Local/Android/android-sdk/tools:/c/Users/nicsj/AppData/Local/Android/android-sdk/build-tools/22.0.1:/c/Users/nicsj/AppData/Local/Android/android-sdk/platform-tools

Ионная настройка:

Cordova CLI: 5.1.1
Gulp version:  CLI version 3.9.0
Gulp local:
Ionic CLI Version: 1.6.4
Ionic App Lib Version: 0.3.8
OS: Windows 7 SP1
Node Version: v0.12.5

Android SDK:

C:\Users\nicsj>android list targets
Available Android targets:
----------
id: 1 or "android-22"
     Name: Android 5.1.1
     Type: Platform
     API level: 22
     Revision: 2
     Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W
XGA720, WXGA800, WXGA800-7in
 Tag/ABIs : no ABIs.
----------
id: 2 or "android-23"
     Name: Android 6.0
     Type: Platform
     API level: 23
     Revision: 1
     Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W
XGA720, WXGA800, WXGA800-7in
 Tag/ABIs : no ABIs.

Эта проблема новая, и я не знаю, что ее вызвало. Любые советы о том, где я должен выглядеть?

Ответы

Ответ 1

Прежде всего, извините за мой фиктивный английский. У меня была такая же проблема, и я исправляю ее, изменяя цель:

# Project target.    
target=android-22 (I had set this to android-23)

Это должно быть сделано в двух файлах:

yourApp/platforms/android/project.properties    
yourApp/platforms/android/CordovaLib/project.properties

Также манифест должен быть обновлен:

<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="23" />

Ответ 2

У меня была одна и та же проблема, и это сработало для меня. У меня установлен Android Studio, который упрощает управление SDK.

1) Когда вы запускаете Android Studio, нажмите "Настройка"

2) Затем нажмите "Диспетчер SDK"

4) Затем выберите Android 5.1.1, который является уровнем API 22, который вам нужен. См. Снимок экрана ниже.

Выбор версии API из студии Android

5) Нажмите Применить

Здесь будет установлен требуемый андроид-22, который запрашивает ваша сборка.

Ответ 3

Попробуйте сделать следующие шаги один за другим и будет работать:

руководство по установке

См. примечание к Windows и установите все пакеты. У вас должен быть установлен java jdk. И после установки переменной environement для ANDROID_HOME с командой: set ANDROID_HOME="your android location". Надеюсь, это поможет!

Ответ 4

У меня была такая же проблема. Проблема в том, что я использовал cmder. Переключение на windows cmd решило его для меня.

Ответ 5

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

Измените или добавьте переменную среды под переменными системного пути, чтобы убедиться, что она применима ко всем пользователям (вам придется перезапустить команду "Подсказка для внесения изменений" ). Windows имеет два набора переменных среды, системы и пользователя, поэтому, если вы запускаете командную строку в качестве администратора, например, вы можете получить разные переменные среды.

Вы можете прочитать больше здесь: https://superuser.com/questions/625643/why-is-my-path-environment-variable-different-from-the-command-prompt

Ответ 6

Проблема была в том, что я запускал сборку в D: \, тогда как SDK был установлен в C:\

Ответ 7

Я также пробовал много настроек для использования SDK 22

Config.xml

\ платформ \Android\project.properties

целевой = андроид-23

\ платформ \Android\AndroidManifest.xml   

платформы\Android\CordovaLib\project.properties

целевой = андроид-23

Ничего не работало, пока я не принял лицензии SDK 22 через командную строку

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