2016-08-10 6 views
4

私は過去2日間、travisとandroidでCIを構築しようとしていました。Travis-CIとAndroidでプロジェクトをビルドできない

問題は、私は問題を解決するものは何でも、である、他のは、私はanwserのためにスタック内検索が、どれも私の問題

を修正していないあなたは、次のライセンス契約を受け入れていない

アップしますSDKコンポーネント: [com.android.support.constraint:constraint-layout:1.0.0-alpha4、com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4]。

マイルートbuild.gradle:

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.2.0-beta1' 

     //Dagger 2 dependency 
     classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 

     //Realm Dependecies 
     classpath "io.realm:realm-gradle-plugin:1.1.1" 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

task clean(type: Delete) { 
    delete rootProject.buildDir 
} 

アプリbuild.gradle

apply plugin: 'com.android.application' 
apply plugin: 'com.neenbedankt.android-apt' 

//Realm Dependecies 
apply plugin: 'realm-android' 

android { 
    signingConfigs { 
    } 
    compileSdkVersion 24 
    buildToolsVersion "24.0.1" 
    dataBinding { 
     enabled = true 
    } 

    defaultConfig { 
     applicationId "rhcloud.com.financialcontrol" 
     minSdkVersion 15 
     targetSdkVersion 24 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 

    androidTestCompile('com.android.support.test:runner:0.5', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    androidTestCompile('com.android.support.test:rules:0.5', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    testCompile 'junit:junit:4.12' 

    compile fileTree(include: ['*.jar'], dir: 'libs') 

    compile 'com.android.support:appcompat-v7:24.1.1' 
    compile 'com.android.support:design:24.1.1' 


    //Dagger 2 dependencies 
    apt 'com.google.dagger:dagger-compiler:2.0' 
    compile 'com.google.dagger:dagger:2.0' 
    provided 'javax.annotation:jsr250-api:1.0' 

    compile 'klauswk:DroidUtils:0.1-ALPHA' 

} 

.travis.yml

android: 
    components: 
    - tools 
    - platform-tools 
    - build-tools-24.0.1 
    - android-24 
    - extra-android-m2repository 
    - extra-android-support 
    - sys-img-armeabi-v7a-android-22 
    - extra-google-google_play_services 
    licenses: 
    - android-sdk-preview-license-52d11cd2 
    - android-sdk-license-.+ 
    - google-gdk-license-.+ 
before-script: 
    - "android update sdk --no-ui --filter build-tools-24.0.1,android-24,extra-android-m2repository" 
    - "echo no | android create avd --force -n test -t android-22 --abi armeabi-v7a" 
    - "emulator -avd test -no-skin -no-audio -no-window &" 
    - android-wait-for-emulator 
    - "adb shell input keyevent 82 &" 
before_cache: 
    - "rm -f $HOME/.gradle/caches/modules-2/modules-2.lock" 
before_install: 
    - "chmod +x gradlew" 
cache: 
    directories: 
    - $HOME/.gradle/caches/ 
    - $HOME/.gradle/wrapper/ 
env: 
    matrix: 
    - "ANDROID_TARGET=android-22 ANDROID_ABI=armeabi-v7a" 
jdk: oraclejdk8 
language: android 
script: 
    - "./gradlew build connectedCheck --stacktrace" 

すべてのヘルプは、ソースコードに感謝されるだろう見つけることができますhere

EDITED

私はついにそれを機能させるように管理します。

まず、ライセンスの問題を修正するために、私はビルドツールをダウングレードし、23までコンパイルし、'com.android.support.constraint:constraint-layout:1.0.0-alpha1'を依存関係として追加しました。

また、Ardockのanwserによって、私は私のtravis.ymlでエラーを見つけることができます。

最後に、android-sdk-license-c81a61d9を追加してライセンスを自動受け入れます。作業がコミット

は編集here

+1

アンドロイドを更新している間に使用許諾契約に同意する必要があります(前のスクリプトブロックでアンドロイドの更新コマンドなど) – Bhargav

答えて

2

を見つけることができます:

このブロックは、そうでない場合は実行されません

before_script:before-script:を交換してください。

前の応答:

this line

スキップ 'ARM EABI v7aシステムイメージ、AndroidのAPI 22、リビジョン1' を参照してください。 は、 'SDK Platform Android 5.1.1、API 22、revision 2'( はインストールされていません)に依存しています。

あなたはすでにライセンスの問題を解決したようですが、あなたはandroid-22プラットフォームをインストールする必要があります。

android: 
    components: 
    - tools 
    - ... 
    - android-22 
    - sys-img-armeabi-v7a-android-22 
    - ... 

または解決するには、Android-23用の画像:

com.android.builder.testing.api.DeviceException:いいえ接続されたデバイスを!

関連する問題