Java Google SignIn不支持游戏服务,但不支持
首先,让我们看一看运行良好的代码。这是我们如何设置Google Api客户端的:Java Google SignIn不支持游戏服务,但不支持,java,android,google-play-services,google-signin,google-play-games,Java,Android,Google Play Services,Google Signin,Google Play Games,首先,让我们看一看运行良好的代码。这是我们如何设置Google Api客户端的: GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestEmail() .requestIdToken(AppActivity.this.getResources().getString(R.strin
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.requestIdToken(AppActivity.this.getResources().getString(R.string.server_client_id))
.build();
GoogleSignIn.googleApiClient = new GoogleApiClient.Builder(this)
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
然后,此选项用于连接:
// GPGS needs optional apparently, at least it crashes without.
// Normal (non GPGS) SignIn works either way
googleApiClient.connect(SIGN_IN_MODE_OPTIONAL);
然后我们调用login。覆盖显示,我选择我的电子邮件,登录运行,一切正常:
public static void loginGoogleSDK()
{
Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(googleApiClient);
GameApplication.getActivity().startActivityForResult(signInIntent, RC_SIGN_IN);
}
现在谷歌游戏服务登录非常类似,但总是返回一个用户取消的错误。GPGS覆盖显示,您可以选择一封电子邮件,然后它消失并返回错误:
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN)
.requestEmail()
.requestIdToken(AppActivity.this.getResources().getString(R.string.server_client_id))
.build();
GoogleSignIn.googleApiClient = new GoogleApiClient.Builder(this)
.addApi(Games.API)
.addScope(Games.SCOPE_GAMES)
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
连接和登录是完全平等的
用户取消了结果代码,返回此处:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// cancelled = true when using GPGS
GameLog.i("On Activity Result called, cancelled? " + (resultCode == RESULT_CANCELED) );
// [Other code for handling login....]
}
有人知道这是什么原因吗?我们如何让Google Player Games服务正常运行?我有一个类似的问题,但据我所知,你不能在Games.API中使用Auth.Google\u SIGN\u API 我的代码是100%正确的 我不得不将我的电子邮件添加到我的游戏下的Google Play开发者控制台的Testers下
这对于Google+SignIn来说不是必需的,但对于游戏来说是必需的。在这里查看此指南,可能: