Google应用在Android上的Push机制以及C2DM框架的底层实现
16lz
2022-05-08
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 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自助餐】Handler消息机制完全解析(二)MessageQueue的队列
- android 播放rtsp协议流媒体
- android 休眠唤醒机制分析(二) — early_suspend
- Android(安卓)路由框架ARouter最佳实践
- Android系统原理及开发要点详解
- Android开发指南-框架主题-内容提供器
- Android的垃圾回收机制(android refbase类(sp wp))
- 5个最佳的Android测试框架(带示例)
- Android的MotionEvent事件分发机制