Dropbox Integration

can one “integrate dropbox” by simply saving a file to the dropbox folder using normal FolderItem functions?
or is Dropbox not a “real” folder in that sense? and if not, does it require special OS specific declares to use it?

It is a normal folder. It can be in any place though, users are not obliged to go with the default location.

Great… my plan is this…

  1. on app load… check if DB location has been stored and verified in config data
  2. if not, ASK user where (if) DB is installed
  3. store for future use

And then use that path to save files in via normal Folderitem functions.

Of course giving use ability to opt-out etc. .etc.

Then it’s no different as with any other folder. Just be cautious, Dropbox folders can be shared. While one file never is opened by multiple users (since everyone has a local copy), sync conflicts may arise if two users are working on the database.

One downside to the approach is if you are relying on Dropbox sharing/syncing. If you just copy a folder over you won’t know when the upload to Dropbox is complete.

I’m using Dropbox to sync my app’s SQLiteDatabase. However, Dropbox syncs the db file only after I close my app, not after every modification to the database. I’m guessing Dropbox somehow checks that the database file is in use and doesn’t sync it. Any ideas how to work around that?

Thomas, I’ve been doing this for years with Dropbox. I travel alot so when I leave the house with my MBP, I still have access to all my development folders and databases…

Ken, I think I explained my problem poorly.

Anyhow, I figured it out. Now I only connect to the database when I need to read or write something. That way the database file isn’t locked all the time and Dropbox is able to sync it.

Thomas, you explained it right, I do the same thing with sqlite databases on dropbox.

Be bloody careful with dropbox
It has both security implications for your machine & also can leak the data you put up there


[quote=86371:@Norman Palardy]Be bloody careful with dropbox
It has both security implications for your machine & also can leak the data you put up there


One way to ensure no issue would be to use an encrypted SQlite database.

Anybody seen any problems with IDrive?

That would mean your data is more secure but if you have dropbox installed you entire machine is possibly at risk (esp if you run a 32 bit version of Windows) http://codeinsecurity.wordpress.com/2013/09/09/installing-dropbox-prepare-to-lose-aslr/

Interestingly there’s a current review but I didn’t read the entire thing to see how these compare on security issues ESP if they make your local machine vulnerable

Why not store the database in the Xojo Cloud behind a webapp or custom web-service (implement your own dropbox?)? Rackspace/Xojo handles the security 24-7… updates and fixes any security vulnerabilities, and you know your stuff is safe. Then you don’t have to worry about encryption and system attacks. Plus they handle backups for you. The dropbox and idrive services say pretty much “we’re not responsible if our systems crash and your data is lost.”