作者dream3325 (felix)
看板MacDev
標題[問題] Firebase 的離線功能?
時間Tue May 14 02:14:49 2019
各位前輩好
想請問一下有關Firebase的離線功能
如果,今天我的APP在離線的情況下產生了100筆資料,我知道如果back online的話
會自動上傳資料
那如果,APP在還沒有back online, 程式Crash/中斷/Restart
這100筆資料會在我下次重啟APP的時候還在嗎?
這100筆資料是寫在暫存記憶體還是永久記憶體?
如果是寫在暫存記憶體我有甚麼辦法可以讓他寫在永久記憶體,
並且在下次重啟APP時自動上傳
感謝各位
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 208.181.204.234
※ 文章網址: https://webptt.com/m.aspx?n=bbs/MacDev/M.1557771291.A.338.html
1F:推 Blueshiva: 這要看Firebase怎麼處理的啊,不過就算 60.251.43.139 05/14 11:10
2F:→ Blueshiva: 寫到disk一樣有可能中途掛點資料毀損, 60.251.43.139 05/14 11:10
3F:→ Blueshiva: 你要測試的話一個簡單的方法是把device 60.251.43.139 05/14 11:13
4F:→ Blueshiva: 離線,然後產生資料,接著把App force 60.251.43.139 05/14 11:13
5F:→ Blueshiva: quit掉重開,重新上線,看資料有沒有繼 60.251.43.139 05/14 11:13
6F:→ Blueshiva: 續傳上去就知道了。 60.251.43.139 05/14 11:14
7F:→ Blueshiva: 我猜Firebase這種規模的服務,應該會把 60.251.43.139 05/14 11:14
8F:→ Blueshiva: 資料先存在disk避免遺失啦,如果沒有的 60.251.43.139 05/14 11:15
9F:→ Blueshiva: 話,解決方法大概就是發發request/加入 60.251.43.139 05/14 11:16
10F:→ Blueshiva: Firebase自己改/自己在Firebase外面多 60.251.43.139 05/14 11:16
11F:→ Blueshiva: 加一層,自己做資料同步 - 你不會想幹 60.251.43.139 05/14 11:17
12F:→ Blueshiva: 這種事的 60.251.43.139 05/14 11:17
13F:推 iPhoneX: 這功能應該是存 disk 114.32.43.138 05/14 18:47
14F:→ iPhoneX: 他叫 Disk Persistence 不是嗎 114.32.43.138 05/14 18:47
15F:推 iPhoneX: 但是他文件後面說 114.32.43.138 05/14 18:50
16F:→ iPhoneX: Transactions are not persisted 114.32.43.138 05/14 18:50
17F:→ iPhoneX: across app restarts 114.32.43.138 05/14 18:50
18F:→ iPhoneX: 所以你要自己想辦法存沒上傳的資料 114.32.43.138 05/14 18:51
19F:→ Killercat: 我以前的作法是存core data再開一個 1.164.139.4 05/16 11:50
20F:→ Killercat: thread去把core data的東西一筆筆dump 1.164.139.4 05/16 11:51
21F:→ Killercat: 上去(目標不是firebase 但是我想應該在 1.164.139.4 05/16 11:51
22F:→ Killercat: 這例子也能用上) 1.164.139.4 05/16 11:51
23F:→ Killercat: 一筆存成功就砍一筆 1.164.139.4 05/16 11:52
謝謝各位解答 Killercat的想法也是我一開始的想法 我應該會這樣做 謝謝
※ 編輯: dream3325 (208.181.204.234), 05/17/2019 00:21:38