I have an App where a main Feature is "Offline Usage".
We generate a SQLite-Database on our Server what we provide on an API for download. Each time the Database has changed, the users had to redownload the Complete SQLite-Database (Which is currently 50MB and growing in time).
We tried to improve the Update-Method that the user only had to download the Difference-SQL files, but there are some problems (Performance, Corrupt Databases, etc).
Now Google Released Firebase and I thinks it's a good time to replace the SQLite-System with the Firebase System.
But I have some thoughts:
- Can I download the entire Firebase Database for Offline Usage (Not in an App-Cache, in a persistent Storage)?
- Can I track the Progress of the Offline Sync and give the User the option if he want's to sync now or later?
- Can I restrict the Sync to WIFI only?
- Can I deliver a Bundle Database - that after installing the App I can already query offline-Firebase Data?
What I want is: Using Firebase in my App only to sync the Databases - BUT perform all Operations offline. If Firebase is not designed to use this, what's a good alternative?
Then I've another main question regarding Firebase:
- JSON Storage is great - but this way we don't care about a unique Structure, we must pay attention on this to insert always correct Datasets?