自从我在swift / xcode中关闭应用程序后几秒钟过去了?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自从我在swift / xcode中关闭应用程序后几秒钟过去了?相关的知识,希望对你有一定的参考价值。

我需要一个简单的方法来计算我最后一次关闭应用程序和打开它之间的秒数....是否有任何简单的方法可以这样做?

代码中的其他任何内容都不需要更改,只需要“lastAppClosingTime”和“app launch”之间的秒数。我正在考虑使用'timeserving'但是我',不确定它是否有效

我的应用程序中有一个倒计时,要求用户在结束前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 / xcode中关闭应用程序后几秒钟过去了?的主要内容,如果未能解决你的问题,请参考以下文章

firebase 在 Swift 中关闭重载表?

iOS 应用程序在 swift 中关闭视图后冻结

在 SWIFT 中关闭 segue 之前保存变量

在 WebRTC 库中关闭视图控制器时出现 EXC_BAD_ACCESS 错误时崩溃

在 Swift 中关闭键盘时,UIToolbar 不再显示在视图中

应用内电子邮件将发送电子邮件但不会在 Xcode 中关闭