Я сделал travis ci build на Android, но мне хотелось бы кое-что понять, почему это работает и почему это так сильно отличается от официального c.
, на который я потратил около Спокойной ночи и понял, что единственным решением было нестандартное решение.
Я использую sdkmin 24 и sdktarget 29 с java 1.8, но приложение написано на kotlin.
Для справки вот официальная документация travis-ci .
Прежде всего я хотел бы поблагодарить вас за просмотр поста.
Помимо что мое понимание очень простое, мы используем CI для создания «голой» виртуальной машины, которая будет создавать проект, мы на одной странице?
Если вам нужно взглянуть на конфигурацию в Тревис, тогда здесь .
Некоторые вещи, которые помогли мне с этим, были yamlint и изображений доступны .
language: android
dist: trusty
jdk: oraclejdk8
env:
global:
- ANDROID_TARGET_24=android-24
- ANDROID_TARGET_26=android-26
- ANDROID_BUILD_TOOLS=29.0.2
- ANDROID_ABI=armeabi-v7a
- ADB_INSTALL_TIMEOUT=5
android:
components:
- extra
- tools
- tools
- platform-tools
- build-tools-29.0.2
- ${ANDROID_TARGET_26}
- ${ANDROID_BUILD_TOOLS}
- sys-img-x86-${ANDROID_TARGET_26}
- sys-img-${ANDROID_ABI}-android-17
- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository
licenses:
- 'android-sdk-preview-license-.+'
- 'android-sdk-license-.+'
- 'google-gdk-license-.+'
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
cache:
directories:
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/
- $HOME/.android/build-cache
before_install:
- export PATH="$ANDROID_HOME/emulator:$PATH"
- yes | sdkmanager --update
- yes | sdkmanager --licenses
- yes | sdkmanager "build-tools;${ANDROID_BUILD_TOOLS}"
- yes | sdkmanager "platforms;${ANDROID_TARGET_26}"
before_script:
- sdkmanager "system-images;${ANDROID_TARGET_24};default;${ANDROID_ABI}"
- echo no | avdmanager create avd --force -n Pixel_3a_API_26 -k "system-images;${ANDROID_TARGET_24};default;${ANDROID_ABI}"
- emulator -avd Pixel_3a_API_26 -no-audio -no-window &
- android-wait-for-emulator
- adb shell input keyevent 82 &