当前位置: 首页 > 知识库问答 >
问题:

GooglePlayServicesUtil:Google Play服务已经过时。需要5089000,但找到5077534

东方和煦
2023-03-14

我对google play services SDK的更新有问题。

我的应用程序构建并运行(就像以前一样)-但在Android磨损手表上,此消息在日志中:

谷歌PlayServiceSutil﹕ 谷歌Play服务已经过时。需要5089000,但找到5077534

因此,该应用程序使用5.0.89编译,但手表只有5.0.77版。

手表和手机之间的通讯现在失败了(它以前工作过)。

鉴于Android Studio不提供返回到google play服务早期版本的方法,我如何使应用程序向后兼容google play服务的早期版本?

以下是wear应用程序的渐变设置

dependencies {
   compile 'com.google.android.gms:play-services:5.0.+@aar'
   compile "com.android.support:support-v13:20.0.+"
   compile "com.google.android.support:wearable:1.0.+"
}

如果我试图强迫Android Studio使用5.0.77版,它会在构建中抱怨:

错误:找不到:com.google.android.gms:play-service:5.0.77

如何与具有早期版本Google Play服务的手表保持兼容?

共有2个答案

丌官利
2023-03-14

当你的手机有旧的播放服务,而你正在使用新的播放服务库时,就会发生这种情况。所以你只需要从手机上更新谷歌play服务。

你可以用

int googleServiceStatus = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
    Dialog dialog = GoogleApiAvailability.getInstance().getErrorDialog(this,googleServiceStatus, 10);
    if(dialog!=null){
        dialog.show();
    }

这将显示弹出窗口,以防出现任何问题以获得播放服务。

扈瑞
2023-03-14

建造。可穿戴端的gradle需要更新,以使用可穿戴的游戏服务,而不是像上面所示的那样只使用游戏服务。

因此,如果您查看WearSDK中提供的DataLayer等示例之一,它在可穿戴/build.gradle中使用了以下内容:

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

我已经提出请求,希望尽快在官方文件中提到这一点。

 类似资料:
  • 这个问题我已经拖了一个星期了。我一直在搜索类似的话题,但还是无法解决我的问题。 问题是,当我试图在Polar m600 wear或wear emulator(Android V7.1.1和API25)上运行我的程序时,他们会给我这样的信息:“Google Play services out of date.需要11011000但发现了10289574”。 我关注了android开发者站点中的“获取

  • 我刚到爪哇。我正在学习将图像和其他数据从db检索到JTable的教程。数据将首先检索到ArrayList中,我得到了一个错误,说array是必需的,但object是找到的。我已经添加了我所有的代码。错误在文件中。如有任何帮助,不胜感激。 course.java

  • 我得到logcat错误: > 编译'com.google.android.gms:play-services:6.1.+ 编译'com.google.android.gms:play-services:5.0.89' 编译'com.google.android.gms:play-services:4+' 这只是手机需要更新的情况吗?我应该瞄准特定的游戏服务吗?当手机过时是问题时,我如何优雅地处理这

  • 应用程序启动失败 描述: com.base.model.abstractDAO中得字段会话需要类型为“org.hibernate.sessionFactory”得bean,但找不到该bean. 我添加了应用程序的实现: pom.xml 应用程序.属性 我在stackoverflow上查找了相同的错误代码,但没有一个解决方案起作用,因此将它与我的代码一起再次发布在这里。希望别人能指出我错在哪里。

  • 问题内容: 我已经声明了公共静态数组的名称和ID: 但是说: 我不知道怎么了 是我声明变量的方式还是写的方法? 问题答案: 您在静态String数组和传递给该方法的本地String变量之间发生冲突。 最好的解决方案是使用不同的名称。这将使代码更容易理解。 如果仍然坚持使用相同的名称,则可以通过使用类名称访问静态数组来解决名称冲突: 这同样适用于您的int数组和int变量。

  • 我有这个超级班: 我想确定我完全理解了解决方案。通过,我给类DAOBase指定了特定的名称“daoBaseBeanname”,应用程序可以用它来标识类DAOBase,这样就不会把它与扩展DAOBase的其他类混淆了。对吗? 谢谢你。