title: Desiging an Android App with Offline Sync. Should I use SyncAdapter?
body: <p>I'm trying to make an Android To-Do client for a web service, with offline caching and sync.</p>
  <p>The web service returns data in JSON format about To-Do tasks on the server when you send it a post message.
  To add a To-Do on the server, you need to send a <code>JSON</code> POST to the server with the task details, upon which it will return you a task <code>UUID</code>.</p>
  <p>I want to implement some type of synchronization so that the tasks I add when I am offline are sent to the server, and data from the server is synchronized to the app (2-way Sync) when Internet is available.</p>
  <p>For now, I have written a basic content provider based To-Do app which does not talk to the server. My question is what would be the best way to go about implementing such a functionality?</p>
  <h3><em>Planning to Try</em></h3>
  <p>I figure that I need to fetch JSON from the server, push it into a local SQLite DB, perform comparisons and find unsynced items and push them to the server. I think I can do this by adding Asynchronous queries in my ContentProvider (Not sure if this is the best way).</p>
  <h3><em>Que:</em></h3>
  <p><em>Should I write my own implementation of the same or can a <code>SyncAdapter</code> do all of this magic? Are there any other design parameters that I should be considering?</em></p>