以下是访问Google Play服务的游戏执行顺序。
第1步:显示包含两个可用用户的Google登录屏幕。 (USER1和USER2)
第2步:选择并成功登录用户。
第3步:用户玩游戏。 “结果”以“首选项”存储在本地。
结果包括a)score
和b)highestAchievementToBeUnlocked
成功登录后或游戏结束时,会从文件中读取成就详细信息并将其提供给Google控制台。
我对上述步骤感到满意,但对以下情况感到困惑。
a)用户签名为“USER1”,玩游戏,成绩详情送到谷歌服务。
b)用户已签名并以“USER2”身份登录并开始游戏,详细信息将提供给Google服务。
c)重复步骤a)请指导我决定处理上述情况的最佳方法。 我怎么能以这样的方式编程,即使“USER2”用他的账号进行中间游戏,我也可以允许“USER1”继续使用他之前的成就进行游戏?
提前致谢!!
答案 0 :(得分:1)
您应该通过signing-in Google帐户覆盖您要执行的操作。在大多数情况下,这也是登录Play商店的帐户。
基本上,如果您的设备中已登录Google帐户,则会在该帐户中保存成就。
如上所述here:
一旦玩家登录并连接了GoogleApiClient, 您的游戏可以开始使用成就API。
然后,您可以在游戏中实施Signing Out,为不同的帐户腾出空间。
致电
signOut()
以退出Google Play游戏服务。 如果您的游戏正在使用其他Google Play服务,请务必同时使用 用户签署这些服务(例如,呼叫clearDefaultAccount()
退出Google+服务)。还有,你的 游戏应该设置一个标志,表明用户明确签名 out,然后在下次游戏活动onStart()
时检查该标记 方法被调用。根据旗帜值,您的游戏就可以了 确定是否致电connect()
以对用户进行签名。