[aerogear-dev] Android Sync Status

Summers Pittman supittma at redhat.com
Mon Feb 9 09:26:34 EST 2015


On 02/09/2015 05:15 AM, Matthias Wessendorf wrote:
>
>
> On Mon, Feb 9, 2015 at 5:14 AM, Summers Pittman <supittma at redhat.com 
> <mailto:supittma at redhat.com>> wrote:
>
>
>     First the good news, I've refactored a lot of the xmpp-client code so
>     now the sync client is correctly handled by an Android service. This
>     gets around issues we were having earlier where the in-memory client
>     would get GCed while the doc was in the background as well as some
>     issues with loading documents when messages came in for the not
>     currently being edited doc.
>
>     Now the bad news, the past two weeks we've been focusing on using
>     Google's two way messaging for being the backbone of sync on
>     Android for
>     alpha.1.  One of the issues we knew about was the 4k message size
>     limit
>     in GCM and that after a POC phase we were going to have to address it.
>     On Friday I noticed that the server was choking on messages much
>     smaller
>     than 4K.  Turns out that 4K includes all of the metadata around the
>     message in addition to the payload.  I do not think the GCM bridge
>     is a
>     good tranport for alpha.1 and (if everyone agrees) will be focusing on
>     the WebSocket based client.
>
>
> +9001 on a solid WebSocket client library for Android.
>
> Especially for privacy our SYNC module should not rely on a 3rd party 
> provider, like GCM, to sync the user's data (either entire documents 
> or even patches).
>
> For the integration of GCM/XMPP, IMO the best usage here is to just 
> signal (or notify) the mobile app (e.g. while running in the 
> background without a persistent connection to the Sync-Server) there 
> is "new data" is available. The app could than (while still in the 
> background) perform a connection to the users' Sync-Server and apply 
> the data (e.g. patch), that was delivered directly from the users' 
> Sync-Server instance. This way the users content is not exchanged over 
> a 3rd party provider, like Google
>
>
>     One thing that this brings up that I didn't see in the AGSYNC Jira
>     (unless I'm blind) was how to manage the socket-connectivity
>     interaction
>     on the clients.  Basically a protocol / pattern for how we manage the
>     socket connections when the device gains and loses internet access or
>     switches networks.  (For instance we should probably disconnect and
>     reconnect when the device leaves a cellular network and joins a Wifi
>     network)This is separate from collision handling/detection which does
>     have a Jira.  If there isn't one (a connection handling Jira) should I
>     make one?
>
>
> Sounds like a good idea, to have that for the next iteration of our 
> SYNC effort
And here it is https://issues.jboss.org/browse/AGSYNC-36
>
>
>     Happy Monday y'all,
>
>     --
>     Summers Pittman
>     >>Phone:404 941 4698
>     >>Java is my crack.
>
>     _______________________________________________
>     aerogear-dev mailing list
>     aerogear-dev at lists.jboss.org <mailto:aerogear-dev at lists.jboss.org>
>     https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
>
>
>
> -- 
> Matthias Wessendorf
>
> blog: http://matthiaswessendorf.wordpress.com/
> sessions: http://www.slideshare.net/mwessendorf
> twitter: http://twitter.com/mwessendorf
>
>
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev


-- 
Summers Pittman
>>Phone:404 941 4698
>>Java is my crack.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/aerogear-dev/attachments/20150209/e4c96b5c/attachment.html 


More information about the aerogear-dev mailing list