Android - Google Play 游戏服务,找不到方法 android.view.View.getDisplay

Posted

技术标签:

【中文标题】Android - Google Play 游戏服务,找不到方法 android.view.View.getDisplay【英文标题】:Android - Google Play Game Service, Could not find method android.view.View.getDisplay 【发布时间】:2013-07-23 09:09:52 【问题描述】:

登录弹出窗口未显示。 logcat 说

  Could not find method android.view.View.getDisplay, referenced from method com.google.android.gms.internal.bn$b.b
   VFY: unable to resolve virtual method 3169: Landroid/view/View;.getDisplay ()Landroid/view/Display;
   VFY: replacing opcode 0x6e at 0x0009

我只在真机上进行了测试,三星 S3 是 Android 4.1.2 (API 16)。 getDisplay() 方法需要 API 17。我尝试了“扩展 FragmentActivity”,但 support-v4 库中没有 getDisplay()。 GamesClient.Builder.setViewForPopups() 要么无济于事。 Google Game Play Service 应该按照要求从 Android 2.2 开始支持。

我所有的开发工具都是最新的。 google-play-lib 3.1.59 (744626-30),SDK 22.0.4。

非常感谢。

【问题讨论】:

您如何将 Google Play 服务集成到您的项目中?您使用的是 Eclipse 还是 Android Studio/Gradle? 【参考方案1】:

试试这些步骤:

    右键单击项目,然后选择属性 转到 Java 构建路径顺序和导出。 如果您将库放在那里,请勾选“Android 私有库”,或者勾选您的库。

然后清理并构建。

【讨论】:

【参考方案2】:

您能发布更完整的日志吗?这些行可能不是登录窗口未显示在您的应用上的原因 (see this other post which shows those lines in the logs and yet was able to proceed)。

其他可能对您有帮助的事情:

在instructions for the Type-A-Number sample 之后,我能够在装有 Android 4.1.1 的手机上运行它。 我拥有的 Google Play 服务库比您拥有的 (3.2.65 (834000-30)) 更新。

【讨论】:

@Nick(赏金所有者),回答您有关 Google Play 库中 API 17 使用的问题:Dalvik 经常抱怨 APK 中缺少方法。只要我们在执行代码期间没有调用这些方法(很可能使用像 if (sdk < android.os.Build.VERSION_CODES.HONEYCOMB) 这样的检查或我认为由 Google 完成的类似操作),这应该不是问题。【参考方案3】:

尝试在不同版本的 Android 上进行测试,因为我在 Android 4.1.2 上测试我的应用程序时也遇到了一些问题。此外,如果您将一些代码放在出现错误的地方会更好。它有助于更​​快地解决问题。

另外,如果问题得到解决,请告诉我们。对遇到同样问题的任何人都会很有用。

【讨论】:

以上是关于Android - Google Play 游戏服务,找不到方法 android.view.View.getDisplay的主要内容,如果未能解决你的问题,请参考以下文章

带有 Google Play 游戏服务和 IntentService 的回合制安卓游戏

Google Play 游戏服务 - Android 示例错误

libGDX Google Play 游戏服务 - Android

打开游戏的时候提示没有google play 服务怎么办?

使用Google Play游戏服务android成功创建房间后强制启动游戏

如何测试使用 google play 游戏服务的未发布的 android 游戏?