当用户进入后台或接到电话时如何暂停或停止精灵套件游戏

Suf*_*him 5 sprite-kit

当用户进入后台(双击主页按钮)或接到电话时,游戏将在后台进行。因此,当他们继续游戏时,分数会增加。我需要知道当他们进入后台或接到电话时如何暂停或停止游戏。我的应用程序是 swift 3 , Xcode 8 。

Joh*_*hnV 1

在 AppDelegate.swift 中,Xcode 默认放置一个名为 的方法applicationWillResignActive。除非您编辑或删除该方法,否则您应该看到以下内容:

func applicationWillResignActive(_ application: UIApplication) {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

从 Xcode 的模板...

当应用程序即将从活动状态转变为非活动状态时发送。对于某些类型的临时中断(例如来电或 SMS 消息)或当用户退出应用程序并开始转换到后台状态时,可能会发生这种情况。使用此方法可以暂停正在进行的任务、禁用计时器并使图形渲染回调无效。游戏应该使用此方法来暂停游戏。

由于此方法是在游戏变为非活动状态之前调用的,因此我的建议是使用此方法来识别您的游戏已暂停。您可以在此方法中放置所需的任何代码来实际暂停游戏的特定任务。

希望这可以帮助!