我已经按照https://developers.google.com上的指南在应用中创建了一个排行榜。这包括设置排行榜并创建两个OAuth 2.0客户端ID,一个用于调试,另一个用于发布。我可以从我的应用程序查看排行榜,它告诉我今天没有人设置高分。因此,我使用该应用程序,它运行代码来更新排行榜。现在,当我尝试从应用程序查看排行榜时,屏幕会暂时变暗,但不会显示排行榜。
在虚拟和真实设备上发布该应用之前和之后,我都尝试过这样做,结果是相同的。
当排行榜为空时,以下用于查看排行榜的代码可以正常工作,但在提交分数后不起作用:
GoogleSignInAccount account = GoogleSignIn.getLastSignedInAccount(this);
if (account != null) {
Games.getLeaderboardsClient(this, account)
.getLeaderboardIntent(getString(R.string.leaderboard_tt_high_scores))
.addOnSuccessListener(new OnSuccessListener<Intent>() {
@Override
public void onSuccess(Intent intent) {
startActivityForResult(intent, RC_TT_LEADERBOARD_UI);
}
});
以下代码用于更新排行榜,并且不会产生任何错误:
GoogleSignInAccount account = GoogleSignIn.getLastSignedInAccount(this);
if (account != null) {
Games.getLeaderboardsClient(this, account)
.submitScore(getString(R.string.leaderboard_mc_high_scores), mOutbox.mScore);
}
发生错误时,Logcat中会出现以下几行,但当我第一次查看空的页首横幅时却没有:
https://www.googleapis.com/games/v1/leaderboards/scores?language=en-US的意外响应代码401
没有与此客户端ID关联的链接应用。
如果我在Google Play控制台中删除并重新创建了排行榜,现在可以再次查看空白的排行榜。提交分数后,我将无法再查看排行榜。