2 回答

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
顯然,你也希望數(shù)據(jù)在10分鐘后寫(xiě)入,即使用戶在數(shù)據(jù)寫(xiě)入之前關(guān)閉應(yīng)用程序。
實(shí)現(xiàn)此目的的唯一方法是設(shè)置第二臺(tái)服務(wù)器。
您的應(yīng)用程序?qū)?shù)據(jù)寫(xiě)入第二個(gè)服務(wù)器,并指示 10 分鐘后將其發(fā)送到 Firebase 數(shù)據(jù)庫(kù)。
第二臺(tái)服務(wù)器設(shè)置計(jì)劃任務(wù)(或其他任務(wù))以在 10 分鐘延遲后將數(shù)據(jù)寫(xiě)入 Firebase。
為了使其可靠,第二個(gè)服務(wù)器需要一個(gè)數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)請(qǐng)求,以防在有待發(fā)送的寫(xiě)入請(qǐng)求時(shí)崩潰并重新啟動(dòng)。然后,當(dāng)它重新啟動(dòng)時(shí),它需要掃描其表以查找任何應(yīng)該發(fā)送的請(qǐng)求,然后發(fā)送它們。
重新閱讀您的問(wèn)題時(shí),似乎這可能是您已經(jīng)實(shí)施的。(盡管您沒(méi)有提到崩潰和恢復(fù)問(wèn)題。)

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊
Firebase 實(shí)時(shí)數(shù)據(jù)庫(kù)中沒(méi)有內(nèi)置功能來(lái)向服務(wù)器發(fā)送延時(shí)寫(xiě)入。唯一類(lèi)似的功能是onDisconnect
向數(shù)據(jù)庫(kù)發(fā)送寫(xiě)入,當(dāng)服務(wù)器檢測(cè)到客戶端已斷開(kāi)連接時(shí)執(zhí)行該寫(xiě)入。但是這個(gè)寫(xiě)操作沒(méi)有時(shí)間延遲。
由于此功能未內(nèi)置于 Firebase 中,因此您必須自行構(gòu)建。擁有處理延時(shí)寫(xiě)入的自定義服務(wù)器端代碼(或云函數(shù))是我能想到的最簡(jiǎn)單的方法。
添加回答
舉報(bào)