我正在开发健康应用程序。如果用户在某几天,几周或几个月内没有打开应用程序,则必须从Pedometer或HealthKit访问该用户的健康数据。有什么方法可以知道我的应用程序再次运行时没有打开多长时间?
是,有。您可以在应用关闭时保存“当前日期”。
func applicationWillTerminate(_ application: UIApplication) {
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
UserDefaults.standard.set(Date(), forKey: "Date")
}
然后,当应用启动时,获取当前日期并与"Date"
比较
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
let passedTime : TimeInterval = Date().timeIntervalSince(UserDefaults.standard.object(forKey: "Date") as! Date)
}
如果您不希望用户更改它,也可以从某些服务器获取Date()
。