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

问题描述 投票:1回答:1

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

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

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

swift xcode time
1个回答
2
投票

您可以存储应用程序终止时的时间,一旦应用程序启动,将上一个关闭日期与当前时间进行比较,这样(转到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()
}
© www.soinside.com 2019 - 2024. All rights reserved.