Od wersji Androida 2.2-alpha4 :
Gradle spróbuje pobrać brakujące pakiety SDK, od których zależy projekt
Co jest niesamowicie fajne i było znane z projektu JakeWharton .
Ale aby pobrać bibliotekę SDK, musisz: zaakceptować umowy licencyjne lub gradle powie ci:
Nie zaakceptowałeś umów licencyjnych następujących komponentów SDK: [Android SDK Build-Tools 24, Android SDK Platform 24]. Przed zbudowaniem projektu musisz zaakceptować umowy licencyjne i dokończyć instalację brakujących komponentów za pomocą Menedżera SDK systemu Android Studio. Ewentualnie, aby dowiedzieć się, jak przenieść umowy licencyjne z jednej stacji roboczej na drugą, przejdź na stronę http://d.android.com/r/studio-ui/export-licenses.html
Jest to problem, ponieważ podczas instalacji chciałbym zainstalować wszystkie zależności SDK gradle build
.
Szukam rozwiązania, które automatycznie zaakceptuje wszystkie licencje. Może skrypt stopniowy? Czy masz jakies pomysły ?
Dzięki!
[EDYTOWAĆ]
Rozwiązaniem było wykonanie:
android update sdk --no-ui --filter build-tools-24.0.0,android-24,extra-android-m2repository
I zainstaluj go ręcznie, ale jest to nowy cel funkcji tego stopnia.
[EDYCJA 2]
Lepszym rozwiązaniem jest użycie sdkmananger:
yes | sdkmanager --licenses
~/.android/tools/android update sdk --no-ui --filter build-tools-25.0.0,android-25,extra-android-m2repository
ponieważ android
narzędzie zostało zlokalizowane w moim domu
$ANDROID_SDK_PATH
do rzeczywistego toru głównego, w którym masz zainstalowanego SDK (tj /opt/android-sdk
), lub po prostu umieścić ścieżkę bezpośrednio (tj yes | sdkmanager --licenses --sdk_root=/opt/android-sdk
)
echo y |
przed tym poleceniem, aby automatycznie zaakceptować licencję. Przydatne, gdy działa się na bezgłowym pudełku CI :)