如何衡量已过时的游戏时间而忽略应用程序在后台的时间?

时间:2016-09-08 08:42:31

标签: ios objective-c cocoa timing

我想衡量用户完成任务所需的时间,比如在游戏中。这很简单:获取开始和结束的NSDate,然后计算差异。

但是,我想忽略应用在后台花费的时间,比如打来的电话。我该怎么做? NSTimer是(或多或少)闹钟。我需要一种秒表。

可以设置一个NSTimer来触发,比如每秒钟,并计算秒数,然后在应用进入后台时使计时器无效,并在应用重新进入时重新激活它前景 - 但这似乎有点矫枉过正。

我忽略了一个简单的方法吗?

1 个答案:

答案 0 :(得分:0)

你有一个可以在任何SpriteKit游戏中运行的游戏循环。

当游戏暂停时,游戏循环暂停。

因此,计算每个循环中的经过时间并添加到累计时间。