我一直在使用LibGDX框架开发游戏,现在我想用google play服务设置它以使用排行榜并设置一些成就等。
要使用GamesClient库,是否需要请求令牌或某种登录谷歌?
我使用调试键创建了我的客户端ID,因此我可以通过eclipse轻松测试游戏。但我总是拒绝连接(GamesClient.connect())。我通过Builder构建了GamesClient:
GamesClient.Builder gcb = new GamesClient.Builder(adView.getContext(), this, this);
gcb.setAccountName(accounts[0].name);
gcb.setViewForPopups(adView);
GamesClient gc = gcb.create();
稍后当它调用gc.connect()时,它只是调用覆盖onConnectionFailed();
我已经将元数据添加到我的Android清单中,如下所示:
<application
....
<meta-data android:name="com.google.android.gms.games.APP_ID"
android:value="@string/app_id" />
....
app_id内容是我为游戏创建的客户ID的12位左右。(我也尝试使用完整ID)。
所以我认为那不是问题。
更多信息: Client ID screenshot
提前感谢您的帮助!
答案 0 :(得分:2)
全套!最后经过一些尝试没有结果,这里是方法(适用于libgdx用户)。
回答第一个问题:根本不需要获取请求,甚至不需要使用谷歌提供的AuthUtil类。
回答第二个问题:
请务必阅读有关GamesClient及其实现的一些教程。
第1步:获取Google提供的BaseGameUtils库,here。
Step2:在MainActivity上实现GameHelper.GameHelperListenner,例如:
public class MainActivity extends AndroidApplication implements GameHelper.GameHelperListener
并声明一个GameHelper,它将为您完成所有登录工作。 (别忘了调用它的构造函数和设置方法,有关更多信息,请参阅GameHelper类。)
Step3:调用beginUserInitiatedSignIn()(来自GameHelper实例)启动登录流程。
多数民众赞成!
建议:按照Type-a-number游戏教程了解登录流程(自述文件中的说明)here。