我试图在应用程序被迫关闭之前更新我的firebase数据库。
设定:
Info.plist
> Application does not run in background
:Bool
YES
模拟:
代码:AppDelegate.swift
此更新
func applicationDidEnterBackground(_ application: UIApplication) {
let user = FIRAuth.auth()!.currentUser!
FIRDatabase.database().reference().child("status").child(user.uid).setValue("foobar")
}
这不会更新(打印功能正常)
func applicationWillTerminate(_ application: UIApplication) {
print("applicationWillTerminate")
let user = FIRAuth.auth()!.currentUser!
FIRDatabase.database().reference().child("status").child(user.uid).setValue("foobar")
}
这是我的数据库结构的屏幕截图 sample
由于我有5秒钟执行异步任务,我觉得它应该可以正常工作
此方法的实现大约需要五秒钟 执行任何任务并返回。如果方法之前没有返回 时间到期,系统可能会完全终止进程。
https://developer.apple.com/reference/uikit/uiapplicationdelegate/1623111-applicationwillterminate
任何线索?