如何使用 Google Play 服务创建 API-15 模拟器(命令行)

How to create API-15 emulator with Google Play Services (Command Line)

我的应用程序的一位用户在 API Level 15 (4.0.4) 上遇到了某些问题,我想在我这边重现该问题。我没有 4.0.4 设备,我想为此目的创建和模拟器。我是 运行 Android Studio 2.0-beta6GUI AVD Manager 根本不显示任何 API-15 模拟器图像。

因此,我随后使用独立 SDK manager 安装了一个 API-15 级别的 x86 系统映像,然后从命令行创建了一个 AVD,如下所示。

$ android create avd -n Api-15-Gnex -t 1

Id 1 是我机器上 API-15 目标的 ID。但是,这个系统映像显然缺少其中的 Google APIs,而我的应用程序依赖于 Google Play services,我需要它们来重现问题。

如何使用 Google APIs 创建 API-15 模拟器?最好从命令行,但不一定。

感谢 Raptor 的评论。通过独立的 SDK 管理器,在 API-15、select Google APIs 下安装包。这将向开发环境添加一个新目标。

$ android list targets
  ----------
  id: 5 or "Google Inc.:Google APIs:15"
    Name: Google APIs
    Type: Add-On
    Vendor: Google Inc.
    Revision: 3
    Description: Android + Google APIs
    Based on Android 4.0.3 (API level 15)
    Libraries:
      * com.android.future.usb.accessory (usb.jar)
          API for USB Accessories
      * com.google.android.media.effects (effects.jar)
          Collection of video effects
      * com.google.android.maps (maps.jar)
          API for Google Maps
    Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800
    Tag/ABIs : default/armeabi-v7a

请注意,它是一个 ARM 映像,而不是 x86。由于小于并包括 15 的 API 不提供硬件加速,所以我认为这无关紧要。

然后使用这个目标创建一个新的 AVD。

$ android create avd --force -n Api-15-Gnex -t 5
    Auto-selecting single ABI armeabi-v7a
    Created AVD 'Api-15-Gnex' based on Google APIs (Google Inc.), ARM (armeabi-v7a) processor,
    with the following hardware config:
    hw.lcd.density=240
    hw.ramSize=512
    vm.heapSize=48

现在,您可以从 GUI AVD 管理器启动它。