【问题标题】:"This app won't run unless you update google play services" alert“除非您更新 google play 服务,否则此应用将无法运行”警报
【发布时间】:2013-10-21 22:02:16
【问题描述】:

在模拟器上运行项目时,我收到“更新 Google Play 服务”警报。如果我点击OK,那么后面还有一个警报。我一直点击OK,已经弹出了大量警报,我最终放弃了。

消息如下:

我已尝试更新 SDK 管理器中的所有内容。在 Eclipse 中也试过,Help->Check for updates.

【问题讨论】:

  • 如果您使用 Maps API v2,模拟器将无法加载地图。您必须在设备中对其进行测试。但是,如果您想在模拟器中执行此操作,则有可用的解决方法。 Maps API v2 需要运行 Google Play 服务,而模拟器中没有这些服务。
  • @Dhaval 我知道。但任何其他屏幕都应该没问题。
  • 是在设备中运行还是只是模拟器问题?所以我们可以缩小问题的范围
  • @Dhaval 在设备上运行良好。仅模拟器有问题。
  • 好的。那么一定是 Maps API v2 的问题。我也搜索了自己,问题似乎和我之前说的一样。这是一个非常独特的问题。也许尝试使用 MapActivity 以外的活动启动应用程序。

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


【解决方案1】:

现在您还可以使用模拟器运行 Android MAP API V2。

注意:只有 Android 4.2.2 及更高版本的 Google API 平台包含 Google Play 服务。

这里的问题是您使用的是旧版本的 Google Play 服务。通过打开 SDK 管理器 => Extras => Google Play 服务更新到最新版本。

【讨论】:

  • Eclipse:使用 SDK 管理器更新后。创建一个新的 google play 库项目来替换您现有的 google play 库项目。
  • 您是否创建了一个新的 google play 库项目并作为库添加到您的项目属性中。您还需要将 google-play-services.jar 放在项目 libs 文件夹中。
  • @ArshadParwez 是的,我创建了。我已经在库中有旧的 .jar。所以只要导入一个新的 google play 库就应该设置 .jar。
【解决方案2】:

您可以尝试使用新的Genymotion Android emulator,您可以在其中更新 google play 服务。我遇到了这个警报并且能够更新它。

似乎我们无法测试最新的 Google 地图 API,它依赖于 Google's Android Emulator 中缺少的 google play 商店应用程序。

Genymotion Android Emulator 附带 Google Play 商店应用程序。

注意:Genymotion v2.0 已停止使用 google 应用程序打包虚拟机,但请参考此link 将 Google Apps 手动添加到 Genymotion

【讨论】:

  • 自 2013 年 11 月 Genymotion 2.0.0 发布以来,他们已停止提供与 Google 应用程序捆绑的模拟器。 Read more
  • 还有办法,参考:将Google Apps添加到Genymotion stackoverflow.com/a/20013322/877994
  • 是的,他们已经正式停止捐赠。否则在软件和编程行业一切皆有可能:)
【解决方案3】:

更新日期:2019 年 6 月 27 日:

带有播放服务的新google x86 emulator 就像一个设备,您可以在其中安装来自 Play 商店的应用程序和所有其他东西。

上一个答案:

我在模拟器中尝试谷歌地图时遇到了类似的问题。虽然有些人已经能够通过从他们的手机下载 google play services 应用程序、制作 apk 文件然后在模拟器中安装该文件来在他们的模拟器中运行 google play 服务,但它确实是一个复杂的过程,并且仅适用于某些 api 级别。使用 google api 的模拟器也是如此,它通过内置地图和 google play 服务进行转换。当您的应用程序要求更新 google play 服务时,地图应用程序将在模拟器中运行。因此,明智的做法是在真实硬件中对其进行测试。

【讨论】:

    【解决方案4】:

    我遇到了同样的问题。 很高兴在较新的模拟器(版本 17 及更高版本)中包含播放服务,但旧版本呢?

    最终我找到了testobject 提供的模拟器。他们所有的模拟器(从版本 15 开始)都带有更新的播放服务和谷歌 API(地图 v2 等),适用于 ARM 和 x86。

    【讨论】:

      【解决方案5】:

      检查这个答案https://stackoverflow.com/a/19734573/3284964。它帮助了我。对我来说,它适用于 4.3 模拟器(google play services release 3.2.65)和我应用中 froyo lib 的 google play services。

      【讨论】:

        【解决方案6】:

        在 android studio 中更改依赖项对我有用:

        com.google.android.gms:play-services:5.+

        到:

        com.google.android.gms:play-services:5.0.+

        【讨论】:

        • 它也对我有用(我在 LG G2 Mobile 上尝试过),但为什么呢?
        • 是的,这里也一样。我正在使用 5.2.08 并更改为 5.0.+ 工作正常。
        【解决方案7】:

        我在导入我的 Eclipse 项目时遇到了 Android Studio 问题。

        在您的 build.gradle 中查找 Google Play 服务。

        dependencies { compile 'com.google.android.gms:play-services:+' }

        更改此项以使用准确的版本:

        dependencies { compile 'com.google.android.gms:play-services:5.0+' }

        然后清理构建(构建 -> 清理项目)。

        【讨论】:

          【解决方案8】:

          对我来说,我必须在我的模拟器上转到settings | apps,然后找到Google Play Services,然后我看到版本号与当前版本号相差甚远(6.7.74 与当前的 7.3.0 相比) )

          然后我转到我的依赖项并更改:

          compile 'com.google.android.gms:play-services:7.3.0'
          

          compile 'com.google.android.gms:play-services:6.+'
          

          您会收到警告说有更新的版本可用,并且要避免在版本号中使用 +,但如果您像我一样花了一整天时间寻找解决方案,您可能会不太在意。

          【讨论】:

          • 我的情况完全一样。但最终它对我有用。谢谢你。 :-)
          【解决方案9】:

          刚刚做了一些检查,我意识到这个问题已经很老了,但是,API19 Google APIs Disk Image 似乎可以与 Google Play 服务一起使用,刚刚使用我正在开发的应用程序对其进行了测试,它显示 Goolge Maps V2 很好。

          【讨论】:

            【解决方案10】:

            (仅适用于 Android Studio 用户)

            我遇到了同样的问题,并通过更新 Android Studio 和 SDK 库解决了它。

            【讨论】:

              猜你喜欢
              • 2013-09-23
              • 1970-01-01
              • 2014-06-20
              • 1970-01-01
              • 2012-11-21
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多