当我回复 PN 时,我正在处理交互式推送通知,该通知应该更新 firbase 数据库。它效果不佳,因为有时如果应用程序处于后台,数据不会实时同步。但是当你打开应用程序时它会推送数据
如果应用处于终止状态,则回复甚至不会发送到 Firebase DB
Ref.child(uId).runTransactionBlock({ (currentData: FIRMutableData) -> FIRTransactionResult in
var value = currentData.value as? [String : AnyObject]
if value == nil {
return FIRTransactionResult.success(withValue: currentData)
}
let totR = value!["totalReply"] as? Int ?? 0
print(totR)
value?["totalReply"] = totR + 1
currentData.value = value
}
最佳答案
Firebase 数据库不提供后台同步。相反,它会在应用程序主动运行时实时同步数据。对于后台同步,您可以使用 Firebase Cloud Messaging 唤醒应用,以便数据库可以同步其数据。
关于ios - 应用程序在后台运行时的 Firebase 数据库事务 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48739902/