如何重置Google Play游戏服务中的成就?

19

我正在使用Google新的游戏服务测试我的游戏,并希望为了测试重置我的账户成就。

我发现你可以使用Google的API(https://developers.google.com/games/services/management/api/#Achievements)重置成就,并且我正在使用OAuth 2.0 Playground发送POST请求,但它没有起作用:(

具体来说,我正在按照链接中详细说明的方式为“https://www.googleapis.com/games/v1management/achievements/reset”发送POST请求。

同时,在我前往code.google.com检查我的服务时,所有Play服务都是“开启”的。

以下是输出信息。我应该如何重置我的成就以进行测试?我是否接近成功了?显然,我的“访问未配置”,我该怎么做?如果不是为了授予我的访问权限,OAuth2.0 Playground的前两步有什么意义呢?

HTTP/1.1 403 Forbidden
Content-length: 205
X-xss-protection: 1; mode=block
X-content-type-options: nosniff
X-google-cache-control: remote-fetch
-content-encoding: gzip
Server: GSE
Reason: Forbidden
Via: HTTP/1.1 GWA
Cache-control: private, max-age=0
Date: Sun, 19 May 2013 04:11:38 GMT
X-frame-options: SAMEORIGIN
Content-type: application/json; charset=UTF-8
Expires: Sun, 19 May 2013 04:11:38 GMT
{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "accessNotConfigured",
    "message": "Access Not Configured"
   }
  ],
  "code": 403,
  "message": "Access Not Configured"
 }
}
7个回答

13
这是我让它运行的方法:
  1. 打开Google Play开发者控制台,在游戏服务下的链接应用中,点击链接另一个应用程序 -> 网页,在URL中使用https://developers.google.com/oauthplayground并完成此链接应用程序的设置。确保相同的URL列为授权重定向URI。

  2. 转到https://developers.google.com/oauthplayground并单击右上角的齿轮图标,选择使用自己的OAuth凭据,并从https://code.google.com/apis/console复制Web应用程序的客户端ID和客户端密码。

  3. 在OAuth Playground的步骤1中的范围中使用https://www.googleapis.com/auth/games,该范围在Google Play游戏服务API下找到。

  4. 进行POST操作,将https://www.googleapis.com/games/v1management/achievements/resethttps://www.googleapis.com/games/v1management/achievements/resetAllForAllPlayers或其他内容重置为所有其他选项。

  5. 利润 :)

注意:

最初我在步骤3之后进行步骤2,但它给了我403。


3

您需要在Google Playground中设置您的客户端ID和客户端密钥。

点击页面右上角的“设置按钮”,将您的凭据信息设置在那里。

最后,从页面左侧选择第一个选项卡,选择范围并进行授权!


1
我正在尝试做你所评论的事情。我为Web应用程序创建了一个新的客户端ID,因为我注意到这是唯一一个会给我客户端ID + 客户端秘钥的选项。当我尝试重置成就时,我收到一个错误消息,说这个clientID没有关联的应用程序。我的应用程序是一个Android应用程序,并且我已经配置好了。但这只给了我一个客户端ID,而没有客户端秘钥。您能否评论一下这是否是正确的方法?谢谢。 - Notbad

2

现在每个条目底部都有一个重置按钮,用于清空草稿成就和排行榜。


2

我也无法让POST请求正常工作,但您可以通过删除并重新添加测试帐户来重置成就。


2
这似乎只会重置非增量成就。很遗憾在Play控制台中没有简单的“删除所有测试者数据”按钮 :-(! - Nick
2
@Nick 对我来说它确实被重置了,但不像非增量式成就那样立即。 它要么随着时间的推移被重置,要么在您删除并重新创建测试帐户后触发增量调用后被重置。 - Grantland Chew
@GrantlandChew 我尝试删除并重新添加测试账户,但它根本没有重置任何成就数据(无论是增量还是其他方式,立即或稍后)。这对已发布的成就有效还是只适用于未发布的成就?我们的成就已经发布了,但我们仍然需要一些方法来进行测试重置。 - mwk
1
@Nick,现在每个条目底部都有一个重置按钮,用于清除成就和排行榜的草稿。 - Neerkoli
1
@middlehut 好的,我会去做的。 :) - Neerkoli
显示剩余2条评论

1
正如WeirdElfBOy所说,在您的开发者控制台中的每个成就内部都有一个重置按钮。但必须满足以下要求才能使重置生效:
  1. 必须是已签名的发布APK,用于测试安装。
  2. 应用程序必须处于alpha或beta测试阶段,并使用您已安装的测试版本的相同应用程序(对此并不确定)
  3. 您的应用程序的Play Games设置不应该被发布。您只能使用未发布的游戏为测试用户重置成就。在这里,我指的是Play Games设置,而不是应用程序本身。

按下重置后,需要长时间才能重置,在我的测试中大约需要1小时,但可能需要更长或更短的时间。

因此,要重置成就,您无需使用ManagementAPI。

但是存在一个小问题,我认为这是Google的问题,我向Google报告了这个问题。增量成就无法重置。


1

1

在您的手机上打开Google Play游戏应用程序,转到设置,然后选择“删除Play Games数据”,向下滚动,从您的游戏中删除数据。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接