I’m designing our first mobile application and for it, I’d like to use the iOSSQLDatabase for the mobile app and on the desktop the normal SQLDatabase. I also want the data to synchronize seamlessly.
To start with I’m thinking of using iCloud, has anyone tackled this yet? My main concern is building it in such a way that it becomes appleOS only, which I don’t want. For this project I want to use Xojo to it’s strength and provide a version of this application on iOS, macOS, Windows and then Android. Then sometime in the future a web interface as well (but that would require we have our own web backend for managing the data first and I don’t want to get into that just yet).
So any ideas on how we can piggy back off iCloud for the moment, without being locked in it?
Another consideration, and I might be wrong here… but it seems I recall there was a difference in encryption between iOS and Desktop versions of an SQLite database with Xojo
That is indeed the end goal. First I want to get the product out there with a sync service for appleOS users (as appleOS is our immediate goal), then as we add more platforms also implement a universal sync solution.
Pah! that could pose a problem. Mind you, I probably wouldn’t store a single file database on iCloud. Maybe brake out the transactions to individual files, and update them only. It’s duplication of data, but it means that iCloud wouldn’t uploading/downloading the entire database everytime a record is changed.
The duplication bothers me, as it means that there’s two copies of the data on each machine, I did consider going the separate file route, but I want the search ability and speed of a SQLDatabase.
Good to know, it’s halfway there as I’d need it for iOS also.
I forgot to mention, the reason I’m not already designing my own server and sync system is that, I’m trying to shift how we build apps. I want to bring the idea to the market as quickly as possible, yet in a way so that when it takes off, the product is well designed enough to grow quickly too.
I used to make sure that 1.0 was the version to have, but with 18 month turn around times for me, and some awesome but terrible selling products, I have to change how I work.
So now my focus is 1.0 is (as) stable as can be and introduces the product with enough features, then it expands. At this rate, I expect version 3.0 to be what’s written all over the house at the moment.
@jean-paul devulder when using CloudKit db is the local db available when no internet connectivity is detected?
This would manage a big concern I have with my current app.
[quote=291099:@JrmieLeroy]@jean-pauldevulder when using CloudKit db is the local db available when no internet connectivity is detected?
This would manage a big concern I have with my current app.[/quote]
Without proper testing, I would say that it is. After looking into how iCloud Drive works, it appears to be just a folder in the users library.