如何使用命令行创建带有Google Play服务的API-15模拟器

5
我的应用程序的一个用户正在特定的API Level 15 (4.0.4)上遇到某些问题,我想在我的设备上重现这个问题。我没有一个4.0.4设备,因此我想为此创建一个模拟器。我正在运行Android Studio 2.0-beta6,GUI AVD Manager在所有的API-15模拟器图像中都没有显示。所以,我使用独立的SDK管理器安装了一个API-15级别的x86系统镜像,然后通过命令行创建了一个AVD。
$ android create avd -n Api-15-Gnex -t 1

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

我该如何创建一个带有Google APIsAPI-15模拟器?最好是通过命令行,但不一定要求。


1
AVD管理器根本没有显示任何API-15模拟器映像,您是否安装了API 15的Google API? - Raptor
从技术上讲,在AVD管理器GUI中,所有可下载的图像都应该在图像选项卡下列出。 - C--
@Raptor 但是,没错,你说得对,Google API实际上提供了一个目标,我可以用它来创建AVD。现在正在尝试。谢谢。 - C--
1个回答

10

感谢 Raptor 的评论。通过独立的 SDK 管理器,在 API-15 下,选择 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。由于硬件加速在API 15及以下版本中不可用,因此我认为这并不重要。
然后使用此目标创建一个新的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

现在,您可以从图形化 AVD 管理器中启动它。

对我来说,结果生成的 AVD 没有包含 Google APIs。 - Fernando Gallego
这是我所做的:android create avd -f -n my-avd -t android-22 --abi google_apis/armeabi-v7a --sdcard 32M - Akshat

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接