在应用退出前保存应用数据 iOS

Save app data before app quits iOS

我有一个用 Swift 编写的应用程序,可以将统计信息上传到我的服务器。我的问题很简单,如下:上传我的统计数据的最佳时间是什么时候?

我想到的一种方法是在应用程序退出时将所有统计信息保存在本地。以后打开应用程序时,我会上传保存的统计信息并清除它们。

问题是applicationWillTerminate有时没有被调用,可能数据没有上传就丢失了。

那么解决我的问题的最佳方法是什么?

谢谢。

在生成数据时将其保存在本地。应用程序启动后,发送它并清除本地缓存。您可以使用 application:didFinishLaunchingWithOptions: 来检测 正在启动

定期缓存您需要保证安全的信息是一种很好的做法,而不是一次全部缓存。

与@jvrmed 类似,我建议在您想要记录统计数据时在本地保存您的数据。但我建议在您的应用程序即将退出活动状态时将这些数据推送到您的服务器 - 即当它处于后台时。

func applicationWillResignActive(_ application: UIApplication) { }