<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 02/03/2015 08:31 AM, Sebastien Blanc
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAD_dpu0ZO4Rb-_h4sOA5Opp-uJmRDe0zE9oKt6NgQtXLEkTZLg@mail.gmail.com"
      type="cite">
      <div dir="ltr">Good Morning all ! 
        <div><br>
        </div>
        <div>As you might know, we are currently adding Amazon Device
          Messaging support to the UnifiedPush server. </div>
        <div>The server side has been PRed and it's now time to work on
          the client SDK.</div>
        <div>As you probably know, the amazon devices :  the Kindle Fire
          (2nd and third generation), Fire Phone and FireTV are running
          FireOS which is basically a fork of Android OS. And since we
          have an Android Push SDK I start looking if we could reuse it.<br>
        </div>
        <div><br>
        </div>
        <div>First good news, is that since AGDroid 2.0, things has been
          nicely isolated and is open for extension. But there is still
          some refactoring to do, the "UPS Registration" flow/logic is
          still in the "gcm" package[1]. That logic should be moved one
          package level higher in a new Abstract class. </div>
        <div>In the end we will have a "gcm" package and a "adm" package
          (or project, see later in my questions)</div>
        <div><br>
        </div>
        <div>This way the ADM logic would be able to reuse that
          registration code. I started to play a bit with this
          refactoring here[2], disclaimer here, I'm not even sure that
          this code compiles, is just to give an idea. </div>
        <div><br>
        </div>
        <div>So before I go further,  some questions (mainly for our
          Android Gods ;)  ) : </div>
        <div><br>
        </div>
        <div>- Is this a good idea (reusing your SDK) ? I think yes,
          even if there is some time and effort needed for refactoring
          to make it completly generic.</div>
      </div>
    </blockquote>
    +1<br>
    <blockquote
cite="mid:CAD_dpu0ZO4Rb-_h4sOA5Opp-uJmRDe0zE9oKt6NgQtXLEkTZLg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>- How do we build / package / deliver ? We probably want 2
          distinct JAR/aar. We could use profile in Maven to only
          package one feature but that sounds a bit "messy".</div>
        <div>What about having sub-projects, this way we would have
          aerogear-android-push and then : aerogear-android-push-gcm and
          aerogear-push-gcm.</div>
      </div>
    </blockquote>
    Putting gcm in a new artifact will break semver.  Both should
    probably just be in the -push artifact.<br>
    <br>
    <blockquote
cite="mid:CAD_dpu0ZO4Rb-_h4sOA5Opp-uJmRDe0zE9oKt6NgQtXLEkTZLg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>- The registration flow for ADM[3] (so device &lt;-&gt;
          Amazon's server) is a bit different thant the GCM one</div>
        <div>, it's the same interface that receive the registration
          event and the push notification events. We have to check how
          this fit with the current architecture of android-push.</div>
      </div>
    </blockquote>
    It looks close enough to the GCM flow that I wouldn't worry.  The
    biggest difference is GCM's service to handle messages and hand to
    your app is in Google Play Services and here it is explicitly in
    your app.<br>
    <blockquote
cite="mid:CAD_dpu0ZO4Rb-_h4sOA5Opp-uJmRDe0zE9oKt6NgQtXLEkTZLg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>Other challenge will be shipping ADM jar, since this one is
          on Maven and must be downloaded manually but that is for later
          ;)</div>
      </div>
    </blockquote>
    /me sees the old, deprecated ADT and runs.<br>
    <br>
    The biggest problem will be supporting Eclipse again.  I don't think
    we can do this.<br>
    <br>
    <blockquote
cite="mid:CAD_dpu0ZO4Rb-_h4sOA5Opp-uJmRDe0zE9oKt6NgQtXLEkTZLg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>Sebi</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>[1]<a moz-do-not-send="true"
href="https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/gcm/AeroGearGCMPushRegistrar.java">https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/gcm/AeroGearGCMPushRegistrar.java</a></div>
        <div>[2] <a moz-do-not-send="true"
href="https://github.com/sebastienblanc/aerogear-android-push/tree/refactoring">https://github.com/sebastienblanc/aerogear-android-push/tree/refactoring</a></div>
        <div>[3] <a moz-do-not-send="true"
href="https://developer.amazon.com/public/apis/engage/device-messaging/tech-docs/04-integrating-your-app-with-adm">https://developer.amazon.com/public/apis/engage/device-messaging/tech-docs/04-integrating-your-app-with-adm</a></div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
aerogear-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/aerogear-dev">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a></pre>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Summers Pittman
&gt;&gt;Phone:404 941 4698
&gt;&gt;Java is my crack.
</pre>
  </body>
</html>