![](/img/trans.png)
[英]Firebase Swift 3 Database crashes on setValue withCompletionBlock
[英]Firebase withCompletionBlock not called if there is no connection
我使用以下內容:
Firebase *fb =[[Firebase alloc] initWithUrl:url];
[fb setValue:d withCompletionBlock:^(NSError *error, Firebase *ref) {
if (error) {
// bad news
} else {
}
}];
如果你有連接,這似乎工作得很好,如果不是,似乎永遠不會調用回調。 如果是這種情況,我是否需要將這整件事包裝在connectedRef
? 當我猜測完成塊只是失敗並且錯誤狀態不在線時,似乎有很多額外的工作。
還有誰有相同的問題嗎?
Firebase背后的想法是為您同步數據。 它不僅僅是一個簡單的請求/響應系統。 因此,如果您在離線時執行setValue,Firebase將保留該數據直到您處於聯機狀態,然后它將在那時執行setValue(然后將調用完成塊)。
所以你所看到的行為是預料之中的。 如果你只想在線上做setValue,那么是的,你需要使用.info / connected觀察者。 但是,如果您在嘗試執行setValue或其他內容時離線,那么您仍然會遇到問題。 一般來說,最好只使用setValue並讓Firebase為您處理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.