实施 Google Play 游戏时出错
Posted
技术标签:
【中文标题】实施 Google Play 游戏时出错【英文标题】:Error while implementing Google Play Games 【发布时间】:2014-06-14 17:56:54 【问题描述】:我正在使用导入语句来尝试使用我的应用实施 Play 游戏。
-导入com.google.android.gms.games.GamesClient无法解析
我有 BaseGameUtils 引用 google-play-services_lib,我的项目将 BaseGameUtils 引用为一个库。
据我了解,GameClient 已于 2014 年 2 月 7 日被弃用,但在查看 Google 的示例代码(例如 ButtonClicker)时,它仍然使用此导入和导入中的一些方法调用。
我从 Google 的 GitHub sample app repository 获得了用于 ButtonClicker2000 的代码,其中一些代码已被回收并用于我遇到错误的程序中。
这是我能想到的所有信息,如果还有什么可以帮助的,请告诉我。
【问题讨论】:
我的 BaseGameUtils 版本在任何时候都不引用 GamesClient(尽管在 cmets 中仍有一些提及)。您是否从here 下载了当前版本? 我认为问题在于我使用了来自 GitHub 的代码并且它没有更新。你知道旧的 GitHub 代码到底应该改变什么吗? 【参考方案1】:我在 ButtonClicker2000 示例上苦苦挣扎了几天,遇到了和你一样的问题。
我认为示例代码中的问题是某些行没有更新。如果您查看that page,您可以很容易地看到这些行的更新版本就在那里。但是 GitHub 页面中的代码并没有完全更新。
因为 GamesClient 类被永久删除,这些语句
GamesClient.EXTRA_PLAYERS
GamesClient.EXTRA_MIN_AUTOMATCH_PLAYERS
GamesClient.EXTRA_MAX_AUTOMATCH_PLAYERS
GamesClient.EXTRA_INVITATION
GamesClient.STATUS_OK
必须替换为
Games.EXTRA_PLAYERS_IDS
Multiplayer.EXTRA_MIN_AUTOMATCH_PLAYERS
Multiplayer.EXTRA_MAX_AUTOMATCH_PLAYERS
Multiplayer.EXTRA_INVITATION
GamesStatusCodes.STATUS_OK
也可以删除该行:
import com.google.android.gms.games.GamesClient;
不需要导入GoogleApiClient,因为GameHelper.java中已经导入了。
在手动更改这些行并导入 Multiplayer 和 GamesStatusCodes 类后,我成功编译了代码。我希望这也能解决您的问题。
【讨论】:
我现在将研究实施这些更改。尝试扩展 BaseGameActivity 时是否也遇到错误?我收到一条错误消息,提示“无法解析类型 android.support.v4.app.FragmentActivity。它是从所需的 .class 文件中间接引用的” 还可能值得注意的是,导入 GamesClient 的 import 语句可以删除,如果需要,可以替换为 import com.google.android.gms.common.api.GoogleApiClient; 就我而言,FragmentActivity 没有问题。也许您应该检查您的库或更新它们。以上是关于实施 Google Play 游戏时出错的主要内容,如果未能解决你的问题,请参考以下文章
Google Play 游戏 C++ SDK 示例失败,找不到库“ButtonClickerNativeActivity”