Firebase può essere usato come database offline?

In senso generale, Firebase Realtime Database può essere usato mentre è offline. Tuttavia, l'aspettativa è che l'app sia connessa per la maggior parte del tempo, e le modifiche al database che avvengono mentre è offline saranno sincronizzate quando ha connettività. L'uso offline al 100% non è proprio un caso d'uso supportato, perché l'archivio dati canonico è sul server.

La copia locale del database è limitata a (10MB, almeno su Android è così). Se hai intenzione di scrivere sul database oltre questo limite mentre sei offline, esso eviterà parte dei tuoi dati nella cache per fare spazio a quello che stai aggiungendo. Poi, non sarete più in grado di leggere quei valori sfrattati fino a quando l'app non tornerà online. Peggio ancora, la gestione di una lista crescente di scritture da applicare quando si torna online è un carico per l'app, quindi non volete pianificare molte scritture mentre siete offline.

Inoltre, se avete permessi o convalide definite per il vostro database, queste possono essere controllate solo sul server. Quindi, se state scrivendo offline sulla vostra cache locale e non avete più un listener attivo, potreste non sapere mai se queste scritture falliscono.

A causa di questi avvertimenti, è meglio non pensare a Firebase Realtime Database come un database "offline". È meglio pensarlo come un database "sincronizzato" che si sincronizza attivamente con il server mentre è presente la connettività.