如何在Android模拟器中下载Google Play服务?


88

我想在我的应用程序中使用Google Play服务API,但是当我打开模拟器测试我的应用程序时,它会向我发送一条消息,指出“必须下载Google Play服务”。我知道发生这种情况是因为我MainActivity在方法中将这个测试编码了onResume()
我想知道如何在模拟器中安装Google Play服务,因为很快我将需要测试地图。


1
只需使用AVD imageGoogleGoogle play serveices嵌入的最新版本即可。在SDK manager
Ujjwal Singh'1

Answers:


79

请查看设置Google Play服务,其中显示:

要使用Google Play服务API开发应用,您需要使用Google Play服务SDK设置项目。

如果您尚未安装Google Play服务SDK,请按照添加SDK软件包指南立即获取。

要在使用Google Play服务SDK时测试您的应用,您必须使用以下任一方法:

  • 运行Android 2.3或更高版本并包含Google Play商店的兼容Android设备。
  • 具有AVD的Android模拟器,可运行基于Android 4.2.2或更高版本的Google API平台。

11
开发者网站引用了一些更新:“具有AVD的Android模拟器,该模拟器运行基于Android 4.2.2或更高版本的Google API平台。”
WindsurferOak

我尝试使用Android API(4.3版),但没有用,所以关键是使用Google API(4.3版)。由于它们是相同的版本号,所以我不知道为什么它最初没有运行。
Skitterm

11
我正在使用Google APIS版本。22 x Intel x86_64。不起作用。
2015年

4
这里重要的是@Skitterm编写的内容。AVD必须以Google API为目标。有趣的是,选择低于23(棉花糖)的API目标会导致设备尝试更新Google Play服务,但对我而言总是失败。
BoneGoat 2015年

有没有人得到这个工作?似乎将带有Android图像的Google API不适用于Google Play。
LewlSauce

55

对于api 21+,您可以将系统图片与Google Play结合使用,如下所述。

对于api 19+(Android 4.4 Kitkat),您可以将系统映像x86与Google Api一起使用(我能够使用它)。

对于api 17+(Android 4.2.2),您可以尝试将系统映像ARM与Google Api结合使用(它对我不起作用)。

我能够将Google Play和Google Services作为单独的apk安装到纯系统映像API 16和17中,但在此之后它们实际上并不能正常工作(服务崩溃并无法打开)。因此,似乎不可能使它们在纯AVD映像上工作,因为它们应通过root访问权限进行安装。在预装了Google API的AVD系统映像上更新Google Services的方法相同-由于证书不兼容而无法更新,即使使用adb也无法卸载,因为没有访问权限。


如何使用Google Play设置AVD系统映像

现在,存在更好的解决方案:将AVD图像与内置的Google Play服务结合使用。它将使您能够使用包括Google Play在内的Google服务。另外,您无需重新创建AVD图像就可以对其进行更新。

打开AVD管理器,然后选择创建新设备。您应该将设备定义与播放商店图标一起使用。

1个

然后为其选择系统映像。您应该选择使用Google Play不是使用Google API。

2

然后启动新设备。

3

您可以按屏幕截图所示更新Play服务,也可以在设备上手动更新。

4


一个应该使用哪个Android Studio版本才能具有此选项?
ronenmiller

1
@ronenmiller我正在使用最后一个稳定版本,现在是2.3.3。但这不应该取决于Android Studio版本。它取决于Android系统映像版本,也许取决于Android虚拟设备管理器的版本,但是我不确定最后一个。我只是总是将所有内容更新为最新的稳定版本。
B-GangsteR

在3.1.3
Emaborsa '18

@Emaborsa您是否选择了使用Google Play或Google API的图片?我现在正在使用Android Studio 3.1.4,并且一切正常。
B-GangsteR

@ B-GangsteR是的,我做到了
Emaborsa '18

16

通过这种方式,您可以在模拟器上使用Android Google Maps API v2。


创建一个新的模拟器

  • 对于设备,请选择“ 5.1” WVGA(480 x 800:mdpi)”
  • 对于目标,请选择“ Android 4.1.2-API级别16”
  • 对于“ CPU / ABI”,选择“ ARM”
  • 保留默认值

这些是对我有用的设置。我不知道不同的。


启动模拟器


通过ADB安装命令安装com.android.vending-1.apkcom.google.android.gms-1.apk


更长的答案在我关于此问题的博客文章上https://medium.com/nemanja-kovacevic/how-to-make-android-google-maps-v2-work-in-android-emulator-e384f5423723


2
我知道这很旧,但是Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
Laser

2
我做了:Android Studio(2.2.3);工具->安卓-> AVD管理器; 创建虚拟设备...; 5.1" WVGA,下一步;牛轧糖(7.1.1),下一步;完成产生的模拟器没有一个谷歌Play商店图标。
威廉Entriken

如果您的兴趣与体系结构无关,我更喜欢使用主机的GPU在x86-x84 CPU / ABI上模拟我的项目。在响应能力方面,仿真有很大不同。
tedebus

1
链接断开
Alberto M

1
嗨,阿尔贝托,从这个答案开始的5年里情况发生了变化,因此这可能无法解决您的问题。
Nemanja Kovacevic

6

我遇到了另一种在模拟器上使用Google Play服务的解决方案。在这些家伙http://www.genymotion.com/提供可以在其上安装谷歌播放服务非常快的模拟器。他们只需要您注册即可开始下载,并且您需要安装虚拟盒。目前,它们可满足Android 16和17的需求,但仍在继续。


17
他们习惯了,直到Google告诉他们停止提供比Google更好的无限服务,并迫使他们从图像中淘汰Play商店。
Reck

5
噢!说,去创建一个新的模拟器来在我现有的genymotion应用上测试平板电脑,阅读您的评论并恨我一秒钟不认识的人。
JuanCortés2014年

genymotion是一个很棒的模拟器,但是现在看来它不适用于地图了:(
KansaiRobot

3

在当前版本(Android Studio 0.5.2)中,现在存在“ Google API x86(Google Inc.)-API Level 19”的设备类型。


3

关键是选择仿真器的目标,例如:Google API(ver 18)。例如,如果您仅选择Jellybean 18(不带API),则将无法测试需要Google服务(例如地图)的应用。请记住,您必须首先使用Android SDK Manager下载您喜欢的版本的Google API。

这是一个很好的做法,它比处理大多数变通办法要好得多。


2

我最近尝试开发Google MAP API V2应用程序,并尝试通过模拟器运行它,但每次显示错误“此手机未安装Google Play Servcies”时,我都会遇到错误。从我的角度来看,我甚至认为Google MAP API V2在模拟器上不起作用。

然后,我尝试在您的Sony Experia上运行相同的示例,再次显示相同的错误。然后,我在自己的手机上安装了Google Play服务,令人惊讶的是它开始工作了.. :)))


2

我得到它的工作

  • 通过Android SDK Manager安装Google Play服务
  • 使用Galaxy Nexus设备(4.65英寸,720 x 1280:xhdpi)
  • 定位到Android 4.2.2 Google API级别17

2

转到https://university.xamarin.com/resources/working-with-android-emulators。向下滚动到“安装Google Play服务”部分。一步一步走过那里。

在这里直接从xamarin上贴上标签,所以我不会因为链接而感到厌烦,并且不包含解决方案。我在xamarin页面上找到可以全面使用的解决方案之前,先在堆栈中找到匹配项,然后进行发布。

  1. 启动Xamarin Android Player并运行提供的图像之一,以下情况假设您已启动KitKat Nexus 4图像。从www.teamandroid.com/gapps/下载正确的Google Play服务.zip文件。确保下载适合您的Android版本的图片。
  2. 将.zip文件拖放到正在运行的仿真器上,然后将其拖放以安装该组件,此处我们在Mac OS X上显示了该文件,但是Windows使用了相同的机制。您将得到提示,将软件包安装到仿真器上,这表明映像将重新启动。
  3. 重新启动后,您会收到一条通知,通知您安装已完成,该图像现在将具有Google Maps,Google +和对Google Play商店的支持。请注意,有些事情无法正常运行,您可能会从某些服务中得到一些错误,但是您可以放心地将其关闭,然后继续进行操作。
  4. 接下来,您需要关联一个Google帐户,以便您可以使用Google Play商店更新服务。它会提示您此操作,但如果没有,您可以进入Google设置并添加一个新帐户。添加帐户后,您可以通过打开Goog​​le Play商店应用并从侧边栏菜单进入设置来更新Google应用。
  5. 选择设置,然后向下滚动至构建版本号信息,然后双击该信息,直到它告知您它是最新的,或者它将下载并安装新版本。
  6. 关闭设备电源(按住右侧工具栏中的电源按钮并重新启动)。重新启动后,它应表明它需要更新Google Play服务,点击通知将打开Goog​​le Play商店并安装最新版本

现在,您可以在Xamarin Android Player中运行依赖于Google Maps的应用程序。


0

要获得最新的设置和信息(如果您已安装Android Studio(即1.5)并尝试定位SDK 4.0),则可能无法使用SDK-vX.XX(带有Google API)来定位和设置和AVD Emulator。

请参阅以下步骤,以下载所需的库并以此开始。 AVD模拟器设置-使用GoogleAPI设置SDK4.0的模拟器,以便Map应用程序可以工作-在Android Studio中

但不幸的是,上述方法对我而言效果不佳。并且无法使用API​​级别17(SDK 4.2)创建仿真器。因此,我关注了这篇在我这方面表现很好的帖子。原因似乎是Android Studio模拟器创建窗口的选项/功能有限。

模拟器中的Google Play服务,实现了Google Plus登录按钮等


0

我知道这是一个老问题,但我来到这里是因为我遇到了与上述所有人相似的问题。我通过仔细阅读解决了它!

我没有注意到有2种可能的系统图像可供我选择,一种包含Google API,另一种不包含(在我的笔记本电脑上,菜单太小,无法读取附加了(带有Google API的)文本。

错过这是一个愚蠢的事情,但是其他人可能像我一样有一个小屏幕,错过了:D


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.