Начиная с Gradle Android плагины 2.2-альфа4 :
Gradle попытается загрузить отсутствующие пакеты SDK, от которых зависит проект
Это удивительно круто и известно, что это проект JakeWharton .
Но, чтобы загрузить библиотеку SDK, вам необходимо: принять лицензионные соглашения или Gradle сообщает вам:
Вы не приняли лицензионные соглашения следующих компонентов SDK: [Android SDK Build-Tools 24, Android SDK Platform 24]. Перед созданием проекта вам необходимо принять лицензионные соглашения и завершить установку отсутствующих компонентов с помощью Android Studio SDK Manager. Кроме того, чтобы узнать, как переносить лицензионные соглашения с одной рабочей станции на другую, перейдите по адресу http://d.android.com/r/studio-ui/export-licenses.html.
И это проблема, потому что я хотел бы установить все зависимости SDK при выполнении gradle build
.
Я ищу решение для автоматического принятия всех лицензий. Может быть, сценарий gradle? У тебя есть идеи ?
Спасибо!
[РЕДАКТИРОВАТЬ]
Решением было выполнить:
android update sdk --no-ui --filter build-tools-24.0.0,android-24,extra-android-m2repository
И установите его вручную, но это новая функция, предназначенная для Gradle.
[РЕДАКТИРОВАТЬ 2]
Лучшее решение - использовать sdkmananger:
yes | sdkmanager --licenses
~/.android/tools/android update sdk --no-ui --filter build-tools-25.0.0,android-25,extra-android-m2repository
потому что android
инструмент был локализован в моем доме
$ANDROID_SDK_PATH
в реальном корневом пути , где вы установили SDK (т.е. /opt/android-sdk
), или просто положить путь непосредственно (то есть: yes | sdkmanager --licenses --sdk_root=/opt/android-sdk
)
echo y |
перед этой командой, чтобы автоматически принять лицензию. Полезно при работе с безголовым CI-боксом :)