Firebase / Firestore数据未保存在applicationDidEnterBackground(Swift)中

时间:2018-09-01 18:29:29

标签: ios swift firebase google-cloud-firestore appdelegate

当我的应用程序进入后台时,applicationDidEnterBackground会被正确调用(显然),但是Firebase中的saveData方法要等到应用程序回到前台后才能完成(这意味着如果用户关闭应用程序,则数据保存)。

var data = User.sharedInstance.dictionary
let firestoreId: String = (data["externalId"]! as! String).firestoreId()
data.removeValue(forKey: "externalId")
// CALLED UP TIL HERE WHEN APP ENTERS BACKGROUND 

Firestore.firestore().collection("users").document(firestoreId).setData(data, merge: true) { (err) in
                    // NOT CALLED UNTIL APP ENTERS FOREGROUND AGAIN
                    if let err = err {
                        print(err.localizedDescription)
                        return
                    }
            }

0 个答案:

没有答案