在Emulator中更新Google Play服务

时间:2016-02-18 08:21:05

标签: android android-studio android-emulator google-play google-play-services

我在Google Play上遇到过很多这样的问题,我使用 Android 4.2.2 API 17

我的应用需要Google Play服务8.1,它编译得很好,当它在模拟器上运行时会显示消息'您需要更新您的Google Play服务'

当我点击更新时没有任何反应,

如何在不下载任何最新API版本的情况下更新Google Play服务?

12 个答案:

答案 0 :(得分:79)

2017年12月18日更新

您可以通过模拟器中的Play商店应用更新Google Play服务,就像使用API​​ 24中的物理Android设备一样。

使用Android Studio v 3.0中的稳定更新检查Emulator new features added

  

Google Play支持 - 来自Google:我们知道很多应用开发者都使用Google Play   服务,并且很难使服务保持最新状态   Android Emulator系统映像。 为了解决这个问题,我们现在   提供包含Play商店的Android系统映像版本   应用程序。从Android Nougat开始提供Google Play图片   (API 24)。使用这些新的模拟器图像,您可以更新Google Play   通过您的模拟器中的Play商店应用程序提供的服务就像您一样   物理Android设备。另外,您现在可以测试端到端安装,   使用Google Play商店更新和购买流程。

  

快速启动 - 快速启动可让您恢复Android模拟器   在6秒内完成会议

     

Android CTS兼容性

     

性能改进 - 使用最新版本的Android   仿真器,我们现在按需分配RAM,而不是分配和   将内存固定为AVD中定义的最大RAM大小。

     

虚拟传感器

     

Wi-Fi支持

     

GPS位置以及更多...

将此 SDK Build-Tools和Android模拟器更新为最新,此警报消息不会再次出现,

  

设置 - > Android SDK - > SDK工具(标签) - > Android SDK   构建工具

enter image description here

答案 1 :(得分:72)

使用安装了Play商店的模拟器。更新播放服务就像在真实设备中一样简单。

由于Google在Android SDK Tools 26.0.0中引入了Google Play Store images,现在仿真器已经安装了Google Play Store

enter image description here

从26.0.3开始

  
      
  • 在Google Play商店图片的扩展窗口中添加一个新标签,用于显示Play服务版本,以及一个用于检查Play服务更新的按钮。
  •   

emulator settings

答案 2 :(得分:18)

基于Google documentation

  

如果您要在模拟器上测试您的应用,请展开Android 4.2.2(API 17)或更高版本的目录,选择Google API并进行安装。然后使用Google API作为平台目标创建一个新的AVD。

尝试导航到设置 - >您的模拟器中的应用,然后找到Google Play服务。检查版本号并在build.gradle中使用它。要使用最新版本进行更新,您可以在documentationSO question中看到它。

答案 3 :(得分:16)

在具有系统映像的虚拟设备上运行应用程序,“Google Play API”代替“Google API”将顺利解决您的问题。

  • 虚拟设备Nexus 5x和Nexus 5支持“Google Play API”图片。

  • Google Play API附带Nougat 7.1.1和O 8.0。

只需按照以下简单步骤操作,确保您的电脑已连接到互联网。

  1. 通过从Android Virtual Devices Manager中选择Create Virtual Device(左下角)来创建新的虚拟设备。

  2. 选择硬件'Nexus 5x'或'Nexus 5'。

  3. 使用Google Play下载系统图片'Nougat'或使用Google Play下载'O'。 'O'是最新的Android 8.0版本。

  4. 单击“下一步”和“完成”。

  5. 在新的虚拟设备上再次运行您的应用,然后点击显示的“立即升级”选项以及警告消息。

  6. 您将被定向到Play商店,您可以轻松更新Google Play服务。

  7. 看到您的应用顺利运行!

    • 注意:如果您打算使用Google Play服务中的API,则必须使用Google API系统映像。

答案 4 :(得分:14)

您需要安装Google Play图片, Android SDK - > SDK平台 - > check show包裹详情 - >安装Google Play。 enter image description here

答案 5 :(得分:7)

我的回答不是更新Google Play服务,而是解决这个问题。 使用以下代码

获取模拟器的播放服务版本
getPackageManager().getPackageInfo("com.google.android.gms", 0 ).versionName);

例如,如果值为“9.8.79”,则使用最近的较小版本com.google.android.gms:play-services:9.8.0'

这将解决您的问题。从https://developers.google.com/android/guides/releases#november_2016_-_v100

获取发布历史记录

答案 6 :(得分:7)

直到我找到显示软件包详细信息选项

为止,页面上的答案才使我难以理解

enter image description here

答案 7 :(得分:1)

我遇到了同样的问题。只是避免在SDK 27中使用模拟器.SDK 26工作正常!

答案 8 :(得分:1)

我知道答案太晚了,但是最近两天我遇到了同样的问题,上述解决方案都不适合我。我的应用程序支持最低SDK 16,果冻豆4.1.x ,因此我想在具有16个android API版本的模拟器上测试我的应用程序,并且我需要Google Play服务。

  

简而言之,对我有用的解决方案是:

     
      
  • 制作新的模拟器 Nexus 5X(具有Play商店支持)-Jelly Bean 4.1.x,16 API级别(不包括Google API)
  •   
  • 手动下载Google Play商店和Google Play服务的APK(这两个APK必须具有相似的版本,   需要以相同的数字开头,例如17.x)
  •   
  • 将这些apk拖放到新的模拟器中
  •   
  • 恭喜,您已在4.1.x模拟器上更新了Google Play服务
  •   

这是我在问题期间遇到的步骤和错误。

因此,我在AVD中制作了新的模拟器。我选择了Nexus 5X(支持Play商店)。之后,我选择了Jelly Bean 16 api级别(带有Google API)。当我打开我的应用程序对话框时,弹出消息您需要更新Google Play服务。当我单击更新按钮时,什么也没发生。我确实在SDK管理器中更新了所有必要的内容,但没有任何效果。我没有在模拟器上安装Google Play Store,甚至我选择了预装Play Store的Nexus 5X。因此,我在扩展控件(模拟器旁边的树点)中找不到Google Play商店标签。

由于没有任何效果,我决定尝试通过下载APK并将其拖放到模拟器中来手动安装Google Play服务。尝试此操作时,遇到问题 APK无法安装。错误:INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES 。我发现这是问题所在,因为我选择了Jelly Bean 16 API级别(使用Google API)。所以我做了新的模拟器

  

Nexus 5X(具有Play商店支持)-Jelly Bean 16 API级别(没有   Google API)

这使我可以手动安装Google Play服务。但是当我运行我的应用程序时,它仍然不想打开它。问题是我的模拟器缺少Google Play商店。因此,我像Google Play服务一样手动安装了它。但是成功安装后,对话框开始每秒弹出一则消息,提示您不幸的是,Google Play服务已停止。问题是我的Google Play商店的版本是17.x,Google Play服务的版本是19.x。因此,最后我安装了版本17.x的Google Play服务,一切正常。

答案 9 :(得分:0)

我遇到了同样的问题。我更新了我的Android工作室并将API 25目标用作Android 7.1.1和X86,一切正常。我为我的项目使用Google Play服务和firebase

答案 10 :(得分:0)

2020年,错误 Google Play服务已过期。需要12451000但找到了11743470

只需使用有效的帐户插入帐户,即可从Google Play更新Google Play服务。

PS:我尝试了不同的仿真器版本,但全部都需要更新Google Play服务。

答案 11 :(得分:0)

更新您的 Google Play服务或仅创建新的模拟器。 当您安装新的模拟器时,此问题将自动得到解决。 编码愉快:)