【问题标题】:HTML5 web based google play leaderboard submission issues基于 HTML5 网络的 google play 排行榜提交问题
【发布时间】:2016-09-15 12:55:50
【问题描述】:

我正在尝试在一个非常基本的 javascript 游戏中实现 Google Play 排行榜:

我在我的 index.html 文件中包含了我认为必要的元标记、登录和脚本:

<meta name="google-signin-client_id" content="xxxxxxxxxxxx-xxxxxxxxxxx.apps.googleusercontent.com" />
<meta name="google-signin-cookiepolicy" content="single_host_origin" />
<meta name="google-signin-callback" content="signinCallback" />
<meta name="google-signin-scope" content="https://www.googleapis.com/auth/games" />

我已经包含了一个标准的谷歌登录按钮:

<div class="g-signin2" data-onsuccess="onSignIn"></div>

我已经包含了 google api:

<script src="https://apis.google.com/js/client.js"></script>
<script src="https://apis.google.com/js/platform.js" async defer></script>

在我的 games.js 文件中,我包含了通过以下方式提交分数的调用:

gapi.client.load('games','v1',function(response) {

  var request2 = gapi.client.games.scores.submit(
    {leaderboardId: "xxxxxxxxxx",
    score: 50}
);
request2.execute(function(response) {
  console.log(response);
  // blah blah blah
});

但排行榜上从未出现任何内容。控制台日志吐出我所期待的。我已经确认了 clientID 和 leaderboardID。

由于某种原因,分数实际上并没有被提交(或者如果提交了,它们也没有被处理)。任何有经验的人都可以为一些指针设置这个?请注意,这不是 chrome 应用程序/扩展程序 - 它是托管在 Web 服务器上的纯 JavaScript 游戏。

【问题讨论】:

  • 认为这只是在 request2.execute 行上遗漏了一个分号。我添加了它,现在一切似乎都运行良好!

标签: javascript html google-play-games leaderboard


【解决方案1】:

基于Leaderboards for the WebScores.submit通过使用URI请求:

POST https://www.googleapis.com/games/v1/leaderboards/leaderboardId/scores

我没有在你的代码中看到这部分。

查看此firewall-defense playgames 示例以了解更多代码实现。

【讨论】:

  • 我使用了这些说明:developers.google.com/games/services/web/clientsetup 说要运行 POST 命令,使用 gapi.client.games.scores.submit 代码(我在上面的 games.js 文件中包含)-您是否建议直接从游戏中进行 POST 调用并绕过 gapi.client 服务?
猜你喜欢
  • 2019-10-10
  • 1970-01-01
  • 1970-01-01
  • 2014-03-22
  • 2018-02-07
  • 2015-01-29
  • 2019-02-21
  • 2013-06-22
  • 1970-01-01
相关资源
最近更新 更多