swift - 自从我在 swift/xcode 中关闭应用程序以来,已经过去了几秒?

标签 swift xcode time

我需要一个简单的方法来计算上次关闭应用程序和打开它之间的秒数......有什么简单的方法可以做到这一点吗?

代码中没有其他内容需要更改,只需要“lastAppClosingTime”和“app Launched”之间的秒数。 我正在考虑使用“时间服务”,但我不确定它是否有效

我的应用程序中有一个倒计时,要求用户在结束前 10 分钟按下按钮,但是我不知道如何让应用程序计算用户是否未能通过最后一次检查

最佳答案

您可以存储应用程序终止的时间,应用程序启动后将最后一次关闭日期与当前时间进行比较,如下所示(转到 AppDelegate.swift):

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    if let date = UserDefaults.standard.object(forKey: "TerminatedAt") as? Date {
        let components = Calendar.current.dateComponents([.second], from: date, to: Date())
        let numberOfSecondsSinceAppClosed = components.second ?? 0
    }

    return true
}

func applicationWillTerminate(_ application: UIApplication) {
    UserDefaults.standard.set(Date(), forKey: "TerminatedAt")
    UserDefaults.standard.synchronize()
}

关于swift - 自从我在 swift/xcode 中关闭应用程序以来,已经过去了几秒?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49089688/

相关文章:

ios - Xcode 8.3 自动完成和语法突出显示不起作用

python - pandas 方式将一天中的时间(有效 datetime.time)转换为浮点变量

ios - 通过在 iOS swift 中排序两个值来查询 firebase 数据库

ios - 调用 tableView.reloadData() 删除自定义单元格动画

ios - 应用程序在 `once.h` 定义的 SIGABRT 中崩溃

javascript - 在 Objective-C 中更改 Javascript 变量

ios - 使用 Array.filter 而不是对象获取索引列表

ios - 如何使用 “Charts” 创建空标签?

Javascript 时间函数无法正确显示

c++ - 来自 time.h 的 time() 是单调的吗?