17

在 SDK 工具中,Google Play 服务已更新至修订版 9(版本 3159100),但 Google Api(API 17)仍为修订版 3,因此仅包含 Google Play 服务版本 3158130

这个问题怎么解决??

LogCat 消息 Google Play 服务已过期。需要 3159100 但找到 3158130

提前致谢

4

10 回答 10

18

这是 Google 在您更新到 SDK 18 (Jelly Bean 4.3) 时出现的问题(现已通过 2013 年 10 月 21 日的更新解决 - 见下文)

https://code.google.com/p/android/issues/detail?id=57880#makechanges

如果您正在运行 Google Play 服务,它会影响 4.2.2 和 4.3 的 Google API 模拟器。

我对解决方法或“非官方”解决方案不感兴趣。这是由 Google 引起的错误,所以我将等待他们修复它。当他们这样做时,我会将这个响应变成正确的“答案”。

2013 年 7 月 26 日收到:

sba 对问题 57880 的评论 #13...@google.com:谷歌播放服务已更新,但 AVD 不是 http://code.google.com/p/android/issues/detail?id=57880

我们正在努力解决这个问题。除了令人发狂的模糊“很快”之外,我还没有预计到达时间。

2013 年 8 月 1 日收到:

更新:状态:分配的所有者:sba...@google.com

sba 对问题 57880 的评论 #18...@google.com:谷歌播放服务已更新但 AVD 不是 http://code.google.com/p/android/issues/detail?id=57880

Play Services 团队知道这个问题,并正在高度重视这个问题。对此的修复将在相同的时间范围内进入相同的模拟器图像。抱歉,我对它什么时候熄灭含糊其辞;我不想告诉你一些事情然后让我们错过它。当我知道更多时,我会更新这个错误。

这是此问题的最终更新(2013 年 10 月 21 日收到)。这个修复在 4.3 上对我来说很好——我还没有在其他口味的 Jelly Bean 上尝试过。

android@googlecode.com 通过 codesite.bounces.google.com 10 月 21 日

对我来说更新:状态:已发布

sba 对问题 57880 的评论 #45...@google.com:谷歌播放服务已更新,但 AVD 不是 http://code.google.com/p/android/issues/detail?id=57880

于 2013-07-26T16:50:54.930 回答
16

您可能希望在运行时检查设备上的 GooglePlayServices 是否是最新的。如果没有,只需显示适当的 errorDialog 以提示用户更新它。

private boolean isGooglePlayServicesAvailable() {
        GoogleApiAvailability googleApiAvailability = GoogleApiAvailability.getInstance();
        Integer resultCode = googleApiAvailability.isGooglePlayServicesAvailable(mContext);
        if (resultCode != ConnectionResult.SUCCESS) {
            Dialog dialog = googleApiAvailability.getErrorDialog(this, resultCode, 0);
            if (dialog != null) {
                dialog.show();
            }
            return false;
        }
        return true;
    }

查看文档以获取更多信息:http: //developer.android.com/google/play-services/setup.html

于 2013-07-25T12:42:13.987 回答
5

我自己遇到了这个问题,并在这里找到了解决方案。对我来说,它适用于目标 API 级别 16。所以我建议您创建一个具有目标API 级别 16(Android 版本 4.1.2,非谷歌 API)的新模拟器并在其上安装这些文件。这将使它成为 google-api 模拟器。我发布了实际答案以供参考

此修复被最新的 sdk 工具破坏,导致错误:

" Google Play services out of date. Requires 3159100 but .."
这里是更新的gmsvending文件。与以前相同的说明:使用任何 cpu/abi、非 google-api 目标(版本 10-17 工作)和 gpu 仿真打开或关闭创建一个新模拟器,然后安装文件:

adb install com.android.vending-20130716.apk 
adb install com.google.android.gms-20130716.apk 

如果您要升级现有的模拟器,那么您可能需要通过以下方式卸载以前的版本:

adb uninstall com.android.vending
adb uninstall com.google.android.gms
于 2013-07-26T05:54:08.557 回答
2

更新您的谷歌播放服务 https://play.google.com/store/apps/details?id=com.google.android.gms&hl=en

并尝试在真实设备上,更新后我也遇到了同样的错误此错误已解决,或者您可以安装foursquare应用程序,它将重定向您直接安装google play服务

https://play.google.com/store/apps/details?id=com.joelapenna.foursquared

于 2013-08-05T09:57:05.920 回答
2

GooglePlayServicesUtil.isGooglePlayServicesAvailable已弃用。建议使用类似的方法,

GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(contex)GoogleApiAvailability类。

于 2015-06-11T23:09:29.177 回答
1

只需将 ..\libs 的 Google Play 服务库(最新版本)中的 jar 文件替换为 ..\libs 的 Google Play 服务库(旧版本)的 jar 文件。
对 ..\bin 中的 jar 文件执行相同的操作。

它适用于我的情况。我使用 Windows 7 的 Android 模拟器(API 级别 8)。

PS我在这些教程中做了必要的操作后做了这些事情:
1)https://blog-emildesign.rhcloud.com/?p=435
2)https://blog-emildesign.rhcloud.com/?p=527

于 2013-10-09T19:13:09.190 回答
0

我也有同样的问题。Google Maps Android V2 花了我很多时间。但幸运的是,我找到了一些apk文件并希望为您分享。

com.android.vending 包:
[3.9.16]
[4.3.11]

com.google.android.gms 包
[3.1.36]
[3.2.25]
[3.2.65]
所有包的链接文件夹

我用 android api-16(4.1.2)、api-17(4.2.2)、api-18(4.3) 在模拟器上进行了测试。它运行良好,并且显示了地图。

于 2013-10-12T09:12:34.700 回答
0

请参考答案如何查看 Google Play 服务版本?.

PS:
1.我的情况下没有使用模拟器,但希望它会有所帮助。
2.它可以帮助避免由于“NullPointer Error”而导致应用程序现金mMap = mapFragment.getMap();,但仍然需要您自己解决如何在模拟器中更新google play服务。

于 2013-10-23T06:46:13.717 回答
0
int resultCode=GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(this);
                switch (resultCode){
                    case 0:
                    proceedAfterPermission();
                    break;
                case 2:                                             
                    Toast.makeText(getApplicationContext(),"Update your Google APIS",Toast.LENGTH_SHORT).show();
于 2017-06-15T12:12:32.157 回答
-1

我在使用最新版本的 google-play-services - 9.0.0 时遇到了非常相似的错误。W/GooglePlayServicesUtil: Google Play services out of date. Requires 9080000 but found 9078574

当我进入设置 > 关于 > 版本时,穿戴设备拒绝更新 Google Play 服务:点击查看 > Google Play 服务(点击版本号)

我可以通过将可穿戴模块的 build.gradle 中使用的 google-play-services 版本降低一个版本(降至 8)来修复该错误。

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

我发布以防其他人对最新版本有类似问题。

于 2016-05-31T18:23:00.547 回答