如何使用Swift在iOS中每24小时添加一个变量?

时间:2018-04-21 02:48:50

标签: ios swift datetime time

我在找到教程或某种答案时完全迷失了。

我尝试添加一个数字(例如 +1 ),添加到变量(在本地保存),每个表示时间量( 24小时)。即使用户没有打开/运行该应用程序。

示例:一款名为" Cookie Clicker"的手机游戏,具有相同的功能。它根据不玩游戏/离线所花费的时间为用户提供cookie。

我的问题:无论用户是否打开应用,如何每24小时为变量添加+1。

代码I目前有:

let daysOffDesfult = UserDefaults.standard
var daysOff = 0


//After 24 Hours: Call updateDaysOff() Function (This is the code I need.)


//Code Used to Save Variable Locally:
//Display the Updated Variable
if (daysOffDesfult.value(forKey: "daysOff") != nil){
    daysOff = daysOffDesfult.value(forKey: "daysOff") as! NSInteger!
    countLabel.text = "\(daysOff)"
}

//Update the Variable
func updateDaysOff() {
    daysOff = daysOff + 1
    countLabel.text = "\(daysOff)"

    let daysOffDesfult = UserDefaults.standard

     daysOffDesfult.setValue(daysOff, forKey: "daysOff")
     daysOffDesfult.synchronize()
}

1 个答案:

答案 0 :(得分:1)

您可以在viewDidLoad或<?php echo 'hello'; ?> 中的第一个UIViewController中保存首次打开应用的时间,如下所示:

echo file_get_contents('phar://archive.phar/test.php');

每次启动应用时,都会比较您在UserDefaults中保存的当前日期,以了解过了多少天

if UserDefaults.standard.value(forKey: "firstDate") == nil {
    UserDefaults.standard.set(Date(), forKey: "firstDate")
}