2016-05-12 19 views
5

Linux senza testa a 64 bit. Jenkins sta cercando di creare emulatore di Android, ma non con queste impostazioni:Impossibile creare l'emulatore Android: Impossibile analizzare il file di configurazione di AVD

[android] Using Android SDK: /opt/android-sdk-linux 
[android] Creating Android AVD: /var/lib/jenkins/.android/avd/hudson_en-US_120_768x1200_Google_Inc._Google_APIs_23_google_apis-x86.avd 
[android] /opt/android-sdk-linux/tools/android create avd -f -a -s 768x1200 -n hudson_en-US_120_768x1200_Google_Inc._Google_APIs_23_google_apis-x86 -t "Google Inc.:Google APIs:23" --abi google_apis/x86_64 
[android] Could not create Android emulator: Failed to parse AVD config file 

provato anche altri ABI di per stesso dispositivo: armeabi_v7 e google_apis/x86

Sto cercando di creare questo dispositivo così perché ho bisogno di Google Play Services. sono stato in grado di creare ed eseguire emulatore con le seguenti impostazioni:

[android] Using Android SDK: /opt/android-sdk-linux 
[android] /opt/android-sdk-linux/tools/android create avd -f -a -s 768x1200 -n hudson_en-US_120_768x1200_android-23_armeabi-v7a -t android-23 --abi armeabi-v7a 
[android] Creating Android AVD: /var/lib/jenkins/.android/avd/hudson_en-US_120_768x1200_Google_Inc._Google_APIs_23_google_apis-x86.avd 
[android] Starting Android emulator 
$ /opt/android-sdk-linux/tools/emulator -engine classic -ports 5730,5731 -report-console tcp:5847,max=60 -prop persist.sys.language=en -prop persist.sys.country=US -avd hudson_en-US_120_768x1200_android-23_armeabi-v7a -no-snapshot-load -no-snapshot-save -no-window 
[android] Emulator reported that the startup process is 'running' 

Ma questo emulatore non supporta Google Play Services (Google Maps per essere più precisi), quindi non voglio esso.

+0

c'è un modo per eseguire il debug – Gert

risposta

1

ho trovato soluzione temporanea per questo:

creare quel medesimo dispositivo in locale (l'ho fatto sul mio portatile personale, un MAC) AVD con Android manager. Quindi copiare questo dispositivo appena creato nella cartella del server Linux /var/lib/jenkins/.android/avd/ (cartella .ini e .avd).

E ha funzionato, anche Google Maps è supportato.

+1

come per quanto ne so, il vero problema è che Jenkins funziona come servizio e come se rvice non può eseguire gli strumenti sdk. Cercando di scoprire come far funzionare Jenkins come utente o dare accesso in modo che possa farlo. Hai trovato un modo migliore? Mi piace che le mie build siano completamente automatizzate e non mi permetta di creare un dispositivo ogni volta. –

+0

È rimasto bloccato per molto tempo. Grazie! – Hadi

+0

@Gert Ho già quelle del file: $ ls /var/lib/jenkins/.android/avd/ hudson_de-DE_160_HVGA_android-18_armeabi-v7a.avd hudson_en-US_240_WVGA_android-24_armeabi-v7a_mySuffix.avd hudson_de-DE_160_HVGA_android-18_armeabi-V7A ini hudson_en-US_240_WVGA_android-24_armeabi-v7a_mySuffix.ini hudson_de-DE_160_HVGA_android-7.avd hudson_en-US_240_WVGA_android-24_mySuffix.avd hudson_de-DE_160_HVGA_android-7.ini hudson_en-US_240_WVGA_android-24_mySuffix.ini –

1

avevo affrontato il problema simile nel libro Mac Pro 13" , MacOS Sierra;. Versione 10.12.3 ho cancellato le variabili di ambiente di sistema per la posizione di Android SDK & Gradle in precedenza che ho aggiunto Quando ho costruito con system environment variables.; Jenkins scaricato l'SDK & funzionare senza guasti

è inoltre possibile fare riferimento al libro Expert Android Studio by Murat Yener, Onur Dundar capitolo 10:..? integrazione continua, dove hanno mostrato come costruire su Jenkins