Я использую Azure Pipeline для выполнения CI в моих проектах Android. Со вчерашнего дня CI не удалось создать приложения со следующим сообщением:
Не удалось установить следующие пакеты Android SDK, поскольку некоторые лицензии не были приняты.
Инструменты сборки; 28.0.3 Android SDK Инструменты сборки 28.0.3
Чтобы создать этот проект, примите лицензионные соглашения SDK и установите недостающие компоненты с помощью Android Studio SDK Manager.
В качестве альтернативы для переноса лицензионных соглашений с одной рабочей станции на другую см. http://d.android.com/r/studio-ui/export-licenses.html
Поскольку агент напрямую управляется Microsoft (агент Hosted VS2017), я не могу запустить командную строку вручную, чтобы принять отсутствующие лицензии.
В соответствии с предложением gradle я попытался создать задачу для копирования лицензий со своей рабочей станции на конвейер Azure.
Вот шаги:
- Я добавил лицензии из моего дома android-sdk в исходный код приложения для Android
- Я добавил задачу в конвейер, чтобы скопировать эти файлы лицензий в каталог лицензий рабочей станции конвейера.
Вот скриншот задачи в лазурном конвейере:
Копия этого файла, кажется, сделана правильно в соответствии с журналами:
[раздел] Начиная: копировать файлы в: C: \ Program Files (x86) \ Android \ android-sdk \ licenses \
================================================== ============================ Задача: Копировать файлы Описание: Копировать файлы из исходной папки
в целевую папку с использованием шаблонов соответствия (только шаблоны соответствия
сопоставлять пути к файлам, а не к папкам) Версия: 2.117.2 Автор
: Справка корпорации Microsoft: Подробнее
Информация
================================================== ============================ найдено 6 файлов Очистка целевой папки: C: \ Program Files
(x86) \ Android \ android-sdk \ licenses \ Копирование
D: \ a \ 1 \ s \ licenses \ android-googletv-license для C: \ Program Files
(x86) \ Android \ android-sdk \ licenses \ android-googletv-license Копирование
D: \ a \ 1 \ s \ licenses \ android-sdk-license для C: \ Program Files
(x86) \ Android \ android-sdk \ licenses \ android-sdk-license Копирование
D: \ a \ 1 \ s \ licenses \ android-sdk-preview-license для C: \ Program Files
(x86) \ Android \ android-sdk \ licenses \ android-sdk-preview-license Копирование
D: \ a \ 1 \ s \ licenses \ google-gdk-license для C: \ Program Files
(x86) \ Android \ android-sdk \ licenses \ google-gdk-license Копирование
D: \ a \ 1 \ s \ licenses \ intel-android-extra-license для C: \ Program Files
(x86) \ Android \ android-sdk \ licenses \ intel-android-extra-license Копирование
D: \ a \ 1 \ s \ licenses \ mips-android-sysimage-license для C: \ Program Files
(X86) \ Android \ Android-SDK \ лицензии \ MIPS-андроида-sysimage-лицензии
[раздел] Окончание: Копирование файлов в: C: \ Program Files (x86) \ Android \ android-sdk \ licenses \
Но проблема все еще присутствует. Обратите внимание, что эта задача копирования выполняется до начальной.
Есть идеи, как решить проблему?