Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-11516

Android emulator plugin doesn't work with Android 4.0

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Labels:
      None
    • Environment:
      Jenkins ver. 1.436
      Android Emulator Plugin 1.18
    • Similar Issues:

      Description

      The Android Emulator Plugin doesn't work with the latest version of Android.

      Reproducible with the following emulator configuration:
      Android OS version: Android-14
      Density: 160
      Resolution: HVGA

      The following error is showing in the log:

       
      Started by upstream project "BlockCrusher-Monkey" build number 12
      [android] Using Android SDK: /opt/android-sdk-linux/
      [android] Creating Android AVD: /var/lib/jenkins/.android/avd/hudson_en-US_160_HVGA_android-14.avd
      	Error: This platform has more than one ABI. Please specify one using --abi.
      	
      [android] Could not create Android emulator: Failed to run AVD creation command
      Finished: NOT_BUILT
      

      I downloaded all available packages into the Android SDK.

        Attachments

          Activity

          Hide
          orrc Christopher Orr added a comment -

          Thanks for the report. I haven't managed to reproduce this by installing all packages, but I can see what the problem is.

          Could you possibly post the output of "android list target" on that machine for "android-14", such as this (or at least just the "ABIs" line):

          id: 33 or "android-14"
               Name: Android 4.0
               Type: Platform
               API level: 14
               Revision: 1
               Skins: WQVGA400, WXGA720, WVGA854, WQVGA432, HVGA, WSVGA, QVGA
               ABIs : no ABIs.
          

          Probably we need to add an "ABI" text box to the build configuration, so that you can choose which ABI image you wish to create the emulator with...

          Show
          orrc Christopher Orr added a comment - Thanks for the report. I haven't managed to reproduce this by installing all packages, but I can see what the problem is. Could you possibly post the output of "android list target" on that machine for "android-14", such as this (or at least just the "ABIs" line): id: 33 or "android-14" Name: Android 4.0 Type: Platform API level: 14 Revision: 1 Skins: WQVGA400, WXGA720, WVGA854, WQVGA432, HVGA, WSVGA, QVGA ABIs : no ABIs. Probably we need to add an "ABI" text box to the build configuration, so that you can choose which ABI image you wish to create the emulator with...
          Hide
          peerke Peter Fortuin added a comment -

          Output from android list target on my machine:

          id: 16 or "android-14"
               Name: Android 4.0
               Type: Platform
               API level: 14
               Revision: 1
               Skins: WXGA800, WVGA854, WXGA720, WQVGA400, WSVGA, WQVGA432, WVGA800 (default), HVGA, QVGA
               ABIs : no ABIs.
          

          Somehow it shows that there are no ABIs, while there are on all other targets that I have installed. Very strange that the error message says that there is more then one ABI.

          Show
          peerke Peter Fortuin added a comment - Output from android list target on my machine: id: 16 or "android-14" Name: Android 4.0 Type: Platform API level: 14 Revision: 1 Skins: WXGA800, WVGA854, WXGA720, WQVGA400, WSVGA, WQVGA432, WVGA800 (default), HVGA, QVGA ABIs : no ABIs. Somehow it shows that there are no ABIs, while there are on all other targets that I have installed. Very strange that the error message says that there is more then one ABI.
          Hide
          orrc Christopher Orr added a comment -

          Ah, interestingly I just saw this on Windows with no ABIs installed. It seems the error message is a bit confused:

          > android create avd -n test_4.0 -t android-14
          Valid ABIs: no ABIs.
          Error: This platform has more than one ABI. Please specify one using --abi.
          

          For now, I'll probably add a warning to the Console Output if users attempt to create an Android 4.0 emulator without having downloaded the required ABI. I've also already done this for the new SDK auto-install feature.

          Letting the user choose between multiple ABIs will probably be more difficult – but if there aren't actually any platforms with multiple ABIs yet, then that feature isn't so urgent anyway

          Show
          orrc Christopher Orr added a comment - Ah, interestingly I just saw this on Windows with no ABIs installed. It seems the error message is a bit confused: > android create avd -n test_4.0 -t android-14 Valid ABIs: no ABIs. Error: This platform has more than one ABI. Please specify one using --abi. For now, I'll probably add a warning to the Console Output if users attempt to create an Android 4.0 emulator without having downloaded the required ABI. I've also already done this for the new SDK auto-install feature. Letting the user choose between multiple ABIs will probably be more difficult – but if there aren't actually any platforms with multiple ABIs yet, then that feature isn't so urgent anyway
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Christopher Orr
          Path:
          src/main/java/hudson/plugins/android_emulator/EmulatorConfig.java
          src/main/resources/hudson/plugins/android_emulator/Messages.properties
          http://jenkins-ci.org/commit/android-emulator-plugin/4647bd4be941cc0ea227e30c81e66ebdf3e94816
          Log:
          JENKINS-11516 Detect when AVD cannot be created due to missing ABI.

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Christopher Orr Path: src/main/java/hudson/plugins/android_emulator/EmulatorConfig.java src/main/resources/hudson/plugins/android_emulator/Messages.properties http://jenkins-ci.org/commit/android-emulator-plugin/4647bd4be941cc0ea227e30c81e66ebdf3e94816 Log: JENKINS-11516 Detect when AVD cannot be created due to missing ABI.
          Hide
          dogfood dogfood added a comment -

          Integrated in plugins_android-emulator #19
          JENKINS-11516 Detect when AVD cannot be created due to missing ABI.

          Christopher Orr :
          Files :

          • src/main/resources/hudson/plugins/android_emulator/Messages.properties
          • src/main/java/hudson/plugins/android_emulator/EmulatorConfig.java
          Show
          dogfood dogfood added a comment - Integrated in plugins_android-emulator #19 JENKINS-11516 Detect when AVD cannot be created due to missing ABI. Christopher Orr : Files : src/main/resources/hudson/plugins/android_emulator/Messages.properties src/main/java/hudson/plugins/android_emulator/EmulatorConfig.java
          Hide
          orrc Christopher Orr added a comment -

          Version 2.0 has now been released, which fixes this.

          We now detect when an ABI is required to be installed and notify the user in the console output.

          Also, once Android release SDK Tools r17, the plugin will be able to automatically install the correct ABI and create an emulator with it.

          Show
          orrc Christopher Orr added a comment - Version 2.0 has now been released, which fixes this. We now detect when an ABI is required to be installed and notify the user in the console output. Also, once Android release SDK Tools r17, the plugin will be able to automatically install the correct ABI and create an emulator with it.

            People

            • Assignee:
              orrc Christopher Orr
              Reporter:
              peerke Peter Fortuin
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: