2016-05-07 9 views
0

Ich möchte meinen Code von Android-15 zu Android-23 testen, aber leider scheitert für Android-20 und Android-22.Travis CI Build schlägt für Android-20 und Android-22

Error: Invalid --tag default for the selected target.

The command "echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI" failed and exited with 1 during .

travis Datei:

language: android 
sudo: false 
jdk: oraclejdk7 
os: 
    - linux 
android: 
    components: 
    - platform-tools 
    - tools 
    - build-tools-23.0.3 
    - android-23 
    # Additional components 
    - extra 
    - extra-google-m2repository 
    - extra-android-m2repository 
    - extra-android-support 
    # Images 
    - sys-img-${ANDROID_ABI}-${ANDROID_TARGET} 

env: 
    matrix: 
    - ANDROID_SDKS=android-15 ANDROID_TARGET=android-15 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-16 ANDROID_TARGET=android-16 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-17 ANDROID_TARGET=android-17 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-18 ANDROID_TARGET=android-18 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-19 ANDROID_TARGET=android-19 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-20 ANDROID_TARGET=android-20 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-21 ANDROID_TARGET=android-21 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-22 ANDROID_TARGET=android-22 ANDROID_ABI=armeabi-v7a 
    - ANDROID_SDKS=android-23 ANDROID_TARGET=android-23 ANDROID_ABI=armeabi-v7a 


    global: 
     # wait up to 10 minutes for adb to connect to emulator 
     - ADB_INSTALL_TIMEOUT=10 

cache: 
    directories: 
    - $HOME/.gradle/caches/2.10 
    - $HOME/.gradle/caches/jars-1 
    - $HOME/.gradle/daemon 
    - $HOME/.gradle/native 
    - $HOME/.gradle/wrapper 

before_install: 
    - chmod +x gradlew 

before_script: 
    - echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI 
    - emulator -avd test -no-skin -no-audio -no-window & 

script: 
    - android-wait-for-emulator 
    - adb devices 
    - adb shell setprop dalvik.vm.dexopt-flags v=n,o=v 
    - adb shell input keyevent 82 & 
    - ./gradlew connectedCheck 

travis result

Wie es beheben?

Antwort

1

Das Android 20 SDK-Ziel ist für KitKat4.4-Wearables gedacht und hat ein etwas anderes Systemabbild mit einem abi-Präfix, das den Fehler verursacht.

Unter den #Bilder Sie das Bild von Travis-CI bereitgestellt hinzufügen

- sys-img-armeabi-v7a-android-wear-20 

im Android 20 Matrix-Skript finden Sie android-wear/armeabi-v7

- ANDROID_SDKS=android-20 ANDROID_TARGET=android-20 ANDROID_ABI=android-wear/armeabi-v7a 
+0

Thank hinzufügen müssen du, es funktioniert für android-20 aber nicht android-22, wie repariere es für android-22? – exshinigami

+1

Kein Problem, ich denke, Sie müssen nur 'android-22' zur' components: 'Liste hinzufügen. Das sys-Image 'sys-img-armeabi-v7a-android-22' sollte dann korrekt gefunden werden. – griffio