2012-11-13 38 views
5

我正在创建类似支持Game Center的应用程序的游戏。当玩家正确认证到gamecenter但我想报告自己的分数时,网络(wifi或手机)不可用时,我的问题是报告分数到排行榜。如果网络不可用,Game Center/GameKit报告分数

我的应用程序是适用于iOS 5.0和更大,并根据文件 - Leaderboards - 它应该像他们说的 - 我只使用功能

- (void)reportScoreWithCompletionHandler:(void (^)(NSError *error))completionHandler and 

如果由于某种由于 网络错误导致无法报告分数,因此当网络可用时,游戏套件会自动重新发送数据。

当我关闭wifi,玩我的游戏,并报告得分在此离线模式下,当我回去上网不报我的分数! :(我有我的成就同样的问题。有没有什么窍门或已知的问题吗?或者是此功能只适用于现场appliacations而不是测试?

非常感谢你。

回答

-1

与您的Internet连接如果没有任何身份验证,您将无法利用Apple的自动重新提交功能,它们支持用户已成功通过身份验证并且网络不可用的用例。无论您是否有网络连接,在您通过身份验证后都会拨打reportScore:forLeaderboardID:,您的应该自动提交评分对象(在某些未定义的时间/间隔)由苹果。

0

我一直在看到一些类似的问题。这不是一个答案,但可能会指出问题所在。与来自NathanChristie的答案相反,当WiFi被禁用时,您可以通过身份验证,因为我刚刚使用飞行模式尝试过相同的事情,并且即使没有网络也能够让我的用户进行身份验证。同样发生的事情是,Game Center似乎对我的成就有一个老版本的缓存,并在被问及时显示这些成就。这可能是因为如果您尝试报告并取得成就或排行榜更新并且数据的缓存版本无法识别它,则它将忽略更新。如果我得到更多信息,我会更新。