Google应用在Android上的Push机制以及C2DM框架的底层实现

GMS (Google Mobile Applications)在Android平台使用了Push机制, 所以有更好的用户体验:当服务器上有你的新的的Gmail邮件, 或者有新的Calendar Events, 或者有新的Contact, 你的Android总会第一时间知道, 并且会自动sync下来. 这里用到的就是Push机制. Google在Android上的Push机制利用的就是XMPP协议, 再加上Android上的GTalk客户端也是利用XMPP协议, 所以底层用的是同一个XMPP框架, 协议的实现是开源的Smack.

在Android 2.2版本FroYo之前, Google的Push机制直接就是利用XMPP协议的extension,也就是在<message>元素下加入自定义的子元素, 但自从FroYo, Android引入了一个新的框架C2DM(Cloud to Device Messaging), 而Google的Pushing 机制变成使用C2DM框架. 那C2DM框架的原理是什么呢? XMPP! 所以, C2DM只不过是在XMPP协议基础上的一套机制, 一个标准API而已.

在后面的时间, 我会陆续把Android上的Sync框架,GMS的Push机制, 以及C2DM的实现介绍一下, 我想以时序图的形式效果会更好.

2011.02.09 Update
增加关于Google Push机制以及C2DM实现的具体介绍
http://mysupebaby.iteye.com/blog/902054

你可能感兴趣的:(android,框架,应用服务器,Google,mobile)