GameCenter报告成绩Swift 3

问题描述:

我感到有点沮丧。我正在使用GameCenter和Swift 3实现成就GameCenter报告成绩Swift 3

但是,我收到了错误消息。

无束的bundleID:(空)

我一直在下面的教程,如那些来自raywenderlich.com但不能与成果(我有工作排行榜)找到任何对雨燕3所以不要知道我的代码是否不正确,或者我怎样才能以编程方式返回包ID来确认成就ID。

,试图获得在viewDidLoad中这个工作我编写了以下内容,我的ViewController是GKGameCenterControllerDelegate

var achievements = [GKAchievement]() 
    let fullAchievement = GKAchievement(
      identifier: "ReversedIDforMyApp.FullMarks") 
    achievements.append(fullAchievement) 
    GameKitHelper.sharedInstance.reportAchievements(achievements: achievements) 

我创建了一个帮手报告

func reportAchievements(achievements: [GKAchievement], 
         errorHandler: ((NSError?)->Void)? = nil) { 
    guard gameCenterEnabled else { 
     return 
    } 
    GKAchievement.report(achievements, 
            withCompletionHandler: errorHandler as? (Error?) -> Void) 
} 
} 

我不能工作成就为什么错误信息会显示...

+0

我得到了与我的应用程序相同的错误。从我发现它与xCode的错误,所以只是忽略它。你的成就是否有效?当你去游戏中心的时候会有成就吗?这是对你的应用程序的更新吗?如果更新检查您的iTunes连接版本已添加成果,则与Xcode中的版本号相同。假设实时版本是1.0,所以新版本是1.1,在运行应用程序时Xcode的版本需要为1.1,否则其他成就将不会显示。 –

+0

这是一个新的应用程序。成就在游戏中心显示,但我无法让它工作。 – stevenpcurtis

+0

我会建议使用[link](https://github.com/jackcook/GCHelper)。它是一个很好的库,非常易于使用。您可以使用一些功能来实现游戏中心。只需将GCHelper.swift文件放入您的项目中即可。你不应该有任何问题。 –

看来苹果可能需要很长时间才能设置Game Center的成就,最终代码是OK。去搞清楚。

我可能是错的,但尝试设置百分比和横幅完成对你的GKAchievement对象。

var achievements = [GKAchievement]() 
let fullAchievement = GKAchievement(identifier:"ReversedIDforMyApp.FullMarks") 
fullAchievement.percentComplete = 100 //Set this 
fullAchievement.showsCompletionBanner = true //Set this 
achievements.append(fullAchievement) 
GameKitHelper.sharedInstance.reportAchievements(achievements: achievements) 

func reportAchievements(achievements: [GKAchievement]) { 
    guard gameCenterEnabled else { 
     return 
    } 
    GKAchievement.report([achievements]) { (error) in 
     guard error == nil else { 
      print("Error in reporting achievements: \(error)") 
      return 
     } 
    } 
}