<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    So as I mentioned in the meeting I am dog fooding some sync ideas on
    Android in the form of a DevNexus app.<br>
    <br>
    Here are the two main interfaces that have precipitated out so far:<br>
    <br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="https://gist.github.com/secondsun/df6724e89d7ae06cbb64">https://gist.github.com/secondsun/df6724e89d7ae06cbb64</a><br>
    <br>
    *Warning Android Gory Details begin here*<br>
    <br>
    I am working towards a PeriodicSyncAdapter that I mentioned in a
    previous email.&nbsp; Android has this type of functionality built in but
    it is VERY VERY heavy on boilerplate, XML, and complexity.&nbsp; I want
    to build something which is lighter.<br>
    <br>
    My current idea is to create a BroadcastReceiver which users can
    register.&nbsp; The SynchronicationConfigs (no code to share but they are
    just Key/Value Pojo's) will be instantiated into Synchronizers using
    a Sychcronize factory class (think Pipeline).&nbsp; The Sychcronize
    factory will tell the BroadcastReceiver about the Synchronizers, but
    the Sychronizers will be what does the data loading, saving,
    scheduleing, etc.<br>
    <br>
    The Synchronizer and BroadcastReceiver are separate classes.&nbsp; The
    BroadcastReceiver will be setup in the AndroidManifest.xml file and
    the Synchronizer will be managed by user code.&nbsp; The reason they
    BroadcastReceiver isn't managed by user code is because Android
    won't wake up code which isn't in the AndroidManifest.&nbsp; IE if a sync
    event happens while the app is not running then the sync will not
    happen.<br>
    <br>
    Summers<br>
  </body>
</html>