API 尝试在我的应用中集成 Google Play 游戏时出现异常
API exceptions when trying to integrate Google Play Games in my app
我有一个已在 Play 商店发布的应用程序,我想集成 Google Play 游戏,这样我就可以获得成就,但我一直在
com.google.android.gms.common.api.ApiException: 13:
无论我尝试什么。
我已经关注 https://developers.google.com/games/services/android/quickstart, https://developers.google.com/games/services/android/signin and https://developers.google.com/games/services/console/enabling,还有 Google 的其余文档。
我在 Google 控制台上有一个链接到应用程序的游戏服务,它有一个 Firebase SDK 和一个 API 控制台项目。它有一个带有 OAuth 2.0 客户端的链接 Android 应用程序。在 API 控制台项目中,我有 API 密钥和有效的 OAuth 密钥(检查了 6 次)。 Google Play Games 在 API 控制台项目以及 Google Firebase 上的登录选项上启用(尝试过只是因为我无法让它工作)。我已将我的电子邮件添加为测试人员。
我有一个 google-services.json
文件,其中包含有效的 API 密钥和有效的客户端 ID。在我的 AndroidManifest
中,我拥有文档所说的所有内容,例如 gms.version
和 gms.games.APP_ID
以及 gradle 中的 play-services-auth
和 play-services-games
文件以及应用 google-services 插件和 google 的 maven,并在 Android Studio 中使用 Google Play 服务 SDK。
我试过默认登录方式
GoogleSignInClient signInClient = GoogleSignIn.getClient(this,
GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN);
Intent intent = signInClient.getSignInIntent();
startActivityForResult(mGoogleSignInClient.getSignInIntent(), 20);
以及添加请求范围、请求电子邮件、令牌和构建 GoogleSignInOptions
,以及请求服务器授权代码。
我主要是这样处理的,但我也尝试过不同的方法。
if (requestCode == 20) {
Task<GoogleSignInAccount> task =
GoogleSignIn.getSignedInAccountFromIntent(data);
try {
GoogleSignInAccount account = task.getResult(ApiException.class);
onConnected(account);
} catch (ApiException apiException) {
String message = apiException.getMessage();
我确实尝试了 DEFAULT_SIGN_IN
并能够让 window 向我询问一个帐户,但随后我又收到另一个 API 异常“10”。没有 window 会弹出,但是之前我没有更新的 Play 游戏版本时它会弹出,所以它要求我更新它。
现在已经快一个星期了,我 google 想死。我不认为 SHA 是问题,因为该游戏已经在商店中运行,但我已经检查过了。
如果没有,请给我一些代码来尝试,因为我不会放弃 ^^
我将我的 app_id 添加到资源文件夹,在我的清单中我去了@string/app_id,现在从 Api 获得了成功,将进一步测试以查看是否结果有效。
我有一个已在 Play 商店发布的应用程序,我想集成 Google Play 游戏,这样我就可以获得成就,但我一直在
com.google.android.gms.common.api.ApiException: 13:
无论我尝试什么。
我已经关注 https://developers.google.com/games/services/android/quickstart, https://developers.google.com/games/services/android/signin and https://developers.google.com/games/services/console/enabling,还有 Google 的其余文档。
我在 Google 控制台上有一个链接到应用程序的游戏服务,它有一个 Firebase SDK 和一个 API 控制台项目。它有一个带有 OAuth 2.0 客户端的链接 Android 应用程序。在 API 控制台项目中,我有 API 密钥和有效的 OAuth 密钥(检查了 6 次)。 Google Play Games 在 API 控制台项目以及 Google Firebase 上的登录选项上启用(尝试过只是因为我无法让它工作)。我已将我的电子邮件添加为测试人员。
我有一个 google-services.json
文件,其中包含有效的 API 密钥和有效的客户端 ID。在我的 AndroidManifest
中,我拥有文档所说的所有内容,例如 gms.version
和 gms.games.APP_ID
以及 gradle 中的 play-services-auth
和 play-services-games
文件以及应用 google-services 插件和 google 的 maven,并在 Android Studio 中使用 Google Play 服务 SDK。
我试过默认登录方式
GoogleSignInClient signInClient = GoogleSignIn.getClient(this,
GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN);
Intent intent = signInClient.getSignInIntent();
startActivityForResult(mGoogleSignInClient.getSignInIntent(), 20);
以及添加请求范围、请求电子邮件、令牌和构建 GoogleSignInOptions
,以及请求服务器授权代码。
我主要是这样处理的,但我也尝试过不同的方法。
if (requestCode == 20) {
Task<GoogleSignInAccount> task =
GoogleSignIn.getSignedInAccountFromIntent(data);
try {
GoogleSignInAccount account = task.getResult(ApiException.class);
onConnected(account);
} catch (ApiException apiException) {
String message = apiException.getMessage();
我确实尝试了 DEFAULT_SIGN_IN
并能够让 window 向我询问一个帐户,但随后我又收到另一个 API 异常“10”。没有 window 会弹出,但是之前我没有更新的 Play 游戏版本时它会弹出,所以它要求我更新它。
现在已经快一个星期了,我 google 想死。我不认为 SHA 是问题,因为该游戏已经在商店中运行,但我已经检查过了。
如果没有,请给我一些代码来尝试,因为我不会放弃 ^^
我将我的 app_id 添加到资源文件夹,在我的清单中我去了@string/app_id,现在从 Api 获得了成功,将进一步测试以查看是否结果有效。