Использование Travis CI с Android

Я смотрел на Travis CI docs для Android, поэтому я могу узнать, как начать использовать Travis для моей библиотеки Android. Однако я не понимаю многого из того, что говорится в документации...

пока что я понял это:

language: android  # this means the project will be built in an Android environment

android:
  components:
    - tools               # will be built with latest version of Android SDK tools
    - platform-tools      # ''
    - build-tools-23.0.1  # build tools version of my project
    - android-23          # Android SDK version of my project

документы Travis CI также показывают дополнительные компоненты, которые можно использовать:

# Additional components
- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository
- addon-google_apis-google-19

и оно дает более полный список здесь.

но что это 'дополнительные компоненты' do / mean? я предполагаю, что, возможно,extra-android-support компонент означает, что проект будет построен с библиотекой поддержки Android, но как насчет других?

Я посмотрел Трэвис тесты для Gradle, но я видел, как другие проекты используют script: ./gradlew check, script: ./gradlew clean build check, script: "./gradlew build", и некоторые без script на всех. что все это значит?

1 ответов


С .travis.yml файл, вы настраиваете машину для сборки и запуска кода. В этом файле необходимо указать все необходимые компоненты.

документ показывает все компоненты SDK, которые уже доступны (предустановлены). Вам не нужно указывать их в свой .Трэвис.файл yml, если вы не хотите принудительно переустановить этот компонент.

вместо этого вы должны указать компоненты, которые не предустановлены.
Например, есть только the build-tools 21.1.1 в списке. Это было решение команды, потому что есть более частые обновления для этого компонента.

что означают эти "дополнительные компоненты"?

- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository

это репозитории библиотек поддержки (те же, которые вы должны обновить с помощью диспетчера SDK), из которых gradle загружает библиотеки поддержки, добавленные в блок зависимостей вашего .

чтобы получить список доступных точных имена и описания компонентов выполните команду android list sdk --no-ui --all --extended.
Вы получите что-то вроде:

# Check Android SDK tools: http://developer.android.com/tools/sdk/tools-notes.html
# Check Android SDK Platform-tools: http://developer.android.com/tools/revisions/platforms.html
tools
platform-tools

# Check BuildTools: http://developer.android.com/tools/revisions/build-tools.html
build-tools-23.0.1

# The API to be used to compile
# Check APIs: http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels

android-23
android-22
android-21
android-20
android-19
android-18
android-17
android-16
....

# The system images if you need to run emulator during your tests

sys-img-armeabi-v7a-android-23
sys-img-x86-android-23
....

# Google repository from which download the dependencies

# Check extras: http://developer.android.com/sdk/installing/adding-packages.html#GetSupportLib
extra-android-m2repository
extra-android-support

# Check more extras: http://developer.android.com/sdk/installing/adding-packages.html#GetGoogle
extra-google-m2repository
extra-google-google_play_services

extra-google-admob_ads_sdk
extra-google-analytics_sdk_v2
extra-google-gcm
extra-google-google_play_services_froyo
.....

# Source file
source-23
source-22
source-21

...

С .travis.yml вы должны сказать Трэвису, как проверить, если ваш сборка прошла успешно. С script block вы указываете, какие команды использовать для проверки сборки.
Если ваш проект имеет build.gradle файл в корне репозитория, Gradle будет использоваться для его создания. Этого может быть достаточно для вас, это зависит от вашего проекта.

по умолчанию команда, используемая с gradle:

./gradlew build connectedCheck

но вы можете переопределить его specyfing блок сценария.

Подробнее здесь.

если вы хотите увидеть вывод в travis-ci, вы можете проверить этой.