<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body text="#000000" bgcolor="#FFFFFF">
So after talking with matzew for a bit, I've put together this list
of things that need to be done on Android to have a good push
experience (for the user). My goal is that we discuss these things
to inform a (eventual) push client spec.<br>
<br>
1) Gobs of XML Boilerplate.<br>
the Android manifest needs permissions and uses permissions
stanzas as well as defining the Google Cloud Message receiver. *We
should probably have tooling which does this for the user*<br>
see:
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a
href="https://github.com/secondsun/devnexus2013demo/blob/master/coffeeExample/AndroidManifest.xml">https://github.com/secondsun/devnexus2013demo/blob/master/coffeeExample/AndroidManifest.xml</a><br>
<br>
2) A Intent handling Service.<br>
This Service class extends *GCMBaseIntentService*<span
style="color: rgb(51, 51, 51); font-family: Consolas, 'Liberation
Mono', Courier, monospace; font-size: 12px; font-style: normal;
font-variant: normal; font-weight: normal; letter-spacing: normal;
line-height: 18px; orphans: auto; text-align: start; text-indent:
0px; text-transform: none; white-space: pre; widows: auto;
word-spacing: 0px; -webkit-text-size-adjust: auto;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;"></span> has three
responsibilities, *Registering* clients, *Unregistering* clients,
and *Handling* messages. <br>
see:
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a
href="https://github.com/secondsun/devnexus2013demo/blob/master/coffeeExample/src/net/saga/android/coffeeexample/GCMIntentService.java">https://github.com/secondsun/devnexus2013demo/blob/master/coffeeExample/src/net/saga/android/coffeeexample/GCMIntentService.java</a><br>
<br>
I would prefer developers not have to extend this class, but that
is a talk for a different day.<br>
<br>
3) Some utlities for handling/parsing/routing notifications to other
bits of code. Again, this is a talk for a different day.<br>
<br>
Appendix:<br>
Here is a link to a class based HEAVILY on Google's Service
Utilities class from their demo apps<br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a
href="https://github.com/secondsun/devnexus2013demo/blob/master/coffeeExample/src/net/saga/android/coffeeexample/ServerUtilities.java">https://github.com/secondsun/devnexus2013demo/blob/master/coffeeExample/src/net/saga/android/coffeeexample/ServerUtilities.java</a><br>
<br>
<br>
</body>
</html>