2016-05-12 26 views
5

64 bit không đầu. Jenkins đang cố gắng tạo giả lập Android nhưng không thành công với các thiết lập này:Không thể tạo trình giả lập Android: Không thể phân tích cú pháp tệp cấu hình 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 

Cũng cố gắng khác ABI cho cùng một thiết bị: armeabi_v7 và google_apis/x86

tôi đang cố gắng để tạo ra thiết bị này như thế bởi vì tôi cần Google Dịch vụ Play. tôi đã có thể tạo và chạy giả lập với các thiết lập sau:

[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' 

Nhưng giả lập này không hỗ trợ các dịch vụ Google Play (Google Maps để cụ thể hơn), vì vậy tôi không muốn nó.

+0

có cách nào để gỡ lỗi nó – Gert

Trả lời

1

tôi thấy cách giải quyết tạm thời cho rằng:

Tạo rằng thiết bị tương tự tại địa phương (tôi đã làm nó trên máy tính xách tay cá nhân của tôi, một MAC) với người quản lý Android AVD. Sau đó sao chép thiết bị mới được tạo này vào máy chủ Linux /var/lib/jenkins/.android/avd/ thư mục (.ini.avd thư mục).

Và nó hoạt động, Google Maps cũng được hỗ trợ.

+1

Như xa như tôi biết vấn đề thực sự cho điều này nằm trong thực tế là Jenkins chạy như một dịch vụ và như là một rvice không thể chạy các công cụ sdk. Đang cố gắng tìm hiểu cách cho phép jenkins chạy với tư cách người dùng hoặc cấp quyền truy cập để có thể. Bạn đã tìm thấy một cách tốt hơn? Id giống như các bản dựng của tôi hoàn toàn tự động và không phải tôi tạo thiết bị mỗi lần. –

+0

Bị kẹt với điều này trong một thời gian dài. Cảm ơn! – Hadi

+0

@Gert Tôi đã có những tập tin: $ 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

Tôi đã gặp phải sự cố tương tự trong Mac book pro 13 ", macOS Sierra; phiên bản 10.12.3. Tôi đã xóa các biến môi trường hệ thống cho vị trí thành android gradk & gradle trước đây mà tôi đã thêm. Khi tôi xây dựng nó với system environment variables; Jenkins tải về sdk & nó chạy mà không có thất bại

Bạn cũng có thể tham khảo các cuốn sách Expert Android Studio by Murat Yener, Onur Dundar chương 10:..? hội nhập liên tục; nơi họ cho thấy làm thế nào để xây dựng trên Jenkins

Các vấn đề liên quan