Dropbox has unveiled a new suite of tools aimed at making synchronisation easier for mobile developers. The new Dropbox Sync API aims to ease the frustration many of those developers face in keeping users’ files in sync between multiple devices and platforms.
“Our goal is to make sure users can access their data wherever they are,” said Sean Lynch, product manager on Dropbox’s API. “And we mean that both geographically and by platform.”
Developers can already integrate with existing Dropbox APIs for accessing and saving users’ cloud-stored files. But when those developers want to enable file synchronisation, they struggle with slow, unreliable network connections. Brian Smith, a lead engineer on the developer team at Dropbox, explains that “It’s really hard to build a good user experience with syncing on your own…You need to have a lot of retry logic, a lot of caching, and code to make sure your apps work offline, too.”
Dropbox’s goal with the Sync API is to free up developers to work on their apps’ core features, and let Dropbox leverage its years of syncing experience to handle that side of things.
“The Sync API lets iOS and Android developers focus on the core components of their apps, and leave the compexities of syncing, data storage, and working across platforms to us,” said Lynch. “We’re trying to apply that same ‘it just works’ mentality that our customers love to our developers.”
When developers build the API into their apps, Dropbox will handle downloading, caching, and syncing changes for users’ files. The syncing approach will remain file-based, meaning it will sync files, not data. So if an app uses one huge data file (think Yojimbo, for example), the API will continue to sync the entire file, not the data within it (which is what services like iCloud and Simperium can do). Of course, iOS developers haven’t always loved iCloud’s syncing.
Sticking with the file-based approach is a win for developers, Smith said. “It’s a simple model to understand as a developer,” and it’s easy to go to your computer and check which files are syncing and how as you build and test your app.
Dropbox reports that it has over 100 million users. “We have a lot of people with Dropbox accounts,” Lynch said. “So for a given developer to know that they can just ask a user to sign in with a Dropbox account, and then not have to worry about the other elements [of syncing], we think the Sync API is a pretty compelling pitch.” The Sync API is free for developers to use.
Developers who prefer to continue rolling their own sync solution are more than welcome to, Dropbox says. “The core API is there, and it’s not going away,” Lynch said.
Yesterday, the Sync API began supporting iOS and Android. “But as you can imagine,” Lynch said, “depending on what our developers want, we’d look to expand that.” Mostly, though, the company is looking forward to seeing how developers leverage the new API. Said Lynch: “We’re curious to see what everybody builds.”