当应用程序被杀死时向网络服务发送请求? (Swift 3)

Send request to web service when app gets killed? (Swift 3)

每次用户关闭我的应用程序(不是将其移至后台,而是通过双击“主页”按钮并向上滑动我的应用程序屏幕截图实际上完全退出)时通知我的应用程序非常重要。我知道 applicationWillTerminate() 几乎不会被调用,所以我想知道最安全的方法是在用户终止应用程序时得到通知。 Apple 似乎不太可能没有为此提供任何形式的解决方案,因为很多 iOS 用户习惯于在使用完应用程序后终止应用程序,所以这真的很奇怪如果不可能赶上这个事件。我唯一需要做的就是启动 URLRequest 向我的网络服务发送一些更新指令。

当我添加一个观察者来处理 UIApplicationWillTerminateNotification 时,我得到了更多的一致性。当用户双击主页按钮并滑动应用程序将其关闭时,它会被调用。

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 
{
  NSNotificationCenter.defaultCenter().addObserver(self, selector:#selector(AppDelegate.onAppWillTerminate(_:)), name:UIApplicationWillTerminateNotification, object:nil)
  return true
}


func onAppWillTerminate(notification:NSNotification)
{
  print("onAppWillTerminate")
}