游戏中心显示名称在发布模式中添加了引号



我一直在用沙盒帐户测试我的游戏中心应用程序,但没有注意到这样的问题,在发布模式下,[GKPlayer displayName]会在昵称上添加引号。所以userNickname变成了"userNickname",在名称显示、开始和结束动画方面看起来相当糟糕。这对所有的游戏中心版本和用户来说都是真的吗?如果是的话,我会简单地去掉引号。或者我应该使用displayName以外的东西来获取iOS 6/7中的昵称吗?

解决方案:

我写了这个小函数来修剪显示名称中的双引号。原来它们不是普通的引号。

-(NSString *) trimUnnecessaryCharsInGameCenterDisplayName:(NSString *) displayName
{
    return [displayName stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"u200eu201cu201du202au202c"]];
}

displayName属性实际上在昵称(或别名)和玩家的实际名称之间进行选择。如果你是玩家的朋友,你会得到他们的名字,如果你不是他们的朋友,就会显示昵称。我想引号在那里是为了更清楚地显示哪一个。你会发现普通GC排行榜上也有引号。还有[GKPlayer alias],它总是给你一个昵称(不确定它是带引号还是不带引号),尽管医生说你通常不应该使用这个昵称。displayName在iOS6中是新的,所以我认为这被认为是正确的使用值。

最新更新