搭建XMPP协议,实现自主推送消息到手机
2015-07-05 13:33
357 查看
文章转自:http://www.apkbus.com/android-18168-1-1.html
关于服务器端向Android客户端的推送,主要有三种方式:
1.客户端定时去服务端取或者保持一个长Socket,从本质讲这个不叫推送,这是去服务端拽数据。但是实现简单,主要缺点:耗电等
2.Google的C2DM,具体不细说,缺点,服务器在国外,你懂得,不是很稳定。
3.XMPP协议,它是一种基于XML的传递协议,具有很强的灵活性和可扩展性。它的特点是将复杂性从客户端转移到了服务器端。
听说GTalk、QQ、IM等都用这个协议。
接下来说说XMPP在android客户端上的应用。分两部分:服务端搭建和客户端实现。
1.jpg (39.38 KB, 下载次数: 539)
下载附件 保存到相册
2011-12-6 21:32 上传
服务端搭建:
如果想测试一下功能,直接用搭建好的服务就行,下载androidpn-server-0.5.0-bin.zip ,由于附件太大,上传不上来
下载地址: http://sourceforge.net/projects/androidpn/files/?source=navbar
点击bin目录下得run.bat,直接搭好服务,在浏览器上输入 http://127.0.0.1:7070 就进入管理界面。如下图:
2.jpg (62.53 KB, 下载次数: 504)
下载附件 保存到相册
2011-12-6 21:32 上传
如果你想自己更改服务,下载附件
androidpn-server-0.5.0-src.zip
(303.73 KB, 下载次数: 5029)
2011-12-6 21:43 上传
点击文件名下载附件
,自行修改。
展示一下管理的发送页面:
8.jpg (63.78 KB, 下载次数: 453)
下载附件 保存到相册
2011-12-6 21:38 上传
客户端实现:
下载工程源码
androidpn-client-0.5.0.zip
(347.74 KB, 下载次数: 6080)
2011-12-6 21:39 上传
点击文件名下载附件
,导入工程,运行前更改一处IP地址,修改androidpn.properties文件中的xmppHost为xmppHost=10.0.2.2
原因:模拟器访问本机需要改成10.0.2.2,下图为SDK中说明。
3.jpg (82.43 KB, 下载次数: 524)
下载附件 保存到相册
2011-12-6 21:33 上传
运行界面上图:
4.jpg (16.27 KB, 下载次数: 441)
下载附件 保存到相册
2011-12-6 21:32 上传
5.jpg (40.06 KB, 下载次数: 450)
下载附件 保存到相册
2011-12-6 21:32 上传
从服务端发送消息,客户端运行的界面:
6.jpg (39.64 KB, 下载次数: 450)
下载附件 保存到相册
2011-12-6 21:32 上传
7.jpg (34.03 KB, 下载次数: 458)
下载附件 保存到相册
2011-12-6 21:32 上传
终于看到推送了。
关于服务器端向Android客户端的推送,主要有三种方式:
1.客户端定时去服务端取或者保持一个长Socket,从本质讲这个不叫推送,这是去服务端拽数据。但是实现简单,主要缺点:耗电等
2.Google的C2DM,具体不细说,缺点,服务器在国外,你懂得,不是很稳定。
3.XMPP协议,它是一种基于XML的传递协议,具有很强的灵活性和可扩展性。它的特点是将复杂性从客户端转移到了服务器端。
听说GTalk、QQ、IM等都用这个协议。
接下来说说XMPP在android客户端上的应用。分两部分:服务端搭建和客户端实现。
1.jpg (39.38 KB, 下载次数: 539)
下载附件 保存到相册
2011-12-6 21:32 上传
服务端搭建:
如果想测试一下功能,直接用搭建好的服务就行,下载androidpn-server-0.5.0-bin.zip ,由于附件太大,上传不上来
下载地址: http://sourceforge.net/projects/androidpn/files/?source=navbar
点击bin目录下得run.bat,直接搭好服务,在浏览器上输入 http://127.0.0.1:7070 就进入管理界面。如下图:
2.jpg (62.53 KB, 下载次数: 504)
下载附件 保存到相册
2011-12-6 21:32 上传
如果你想自己更改服务,下载附件
androidpn-server-0.5.0-src.zip
(303.73 KB, 下载次数: 5029)
2011-12-6 21:43 上传
点击文件名下载附件
,自行修改。
展示一下管理的发送页面:
8.jpg (63.78 KB, 下载次数: 453)
下载附件 保存到相册
2011-12-6 21:38 上传
客户端实现:
下载工程源码
androidpn-client-0.5.0.zip
(347.74 KB, 下载次数: 6080)
2011-12-6 21:39 上传
点击文件名下载附件
,导入工程,运行前更改一处IP地址,修改androidpn.properties文件中的xmppHost为xmppHost=10.0.2.2
原因:模拟器访问本机需要改成10.0.2.2,下图为SDK中说明。
3.jpg (82.43 KB, 下载次数: 524)
下载附件 保存到相册
2011-12-6 21:33 上传
运行界面上图:
4.jpg (16.27 KB, 下载次数: 441)
下载附件 保存到相册
2011-12-6 21:32 上传
5.jpg (40.06 KB, 下载次数: 450)
下载附件 保存到相册
2011-12-6 21:32 上传
从服务端发送消息,客户端运行的界面:
6.jpg (39.64 KB, 下载次数: 450)
下载附件 保存到相册
2011-12-6 21:32 上传
7.jpg (34.03 KB, 下载次数: 458)
下载附件 保存到相册
2011-12-6 21:32 上传
终于看到推送了。
相关文章推荐
- [Unity-25] Unity中让游戏对象消失或隐藏的几种方法
- 【ITOO】--windows任务管理器cpu使用和PF解析
- delphi for DirectUI界面库
- delphi for DirectUI界面库
- PE文件,导入表定位
- 【二分+最大团】【HDU3585】【maximum shortest distance】
- 【二分+最大团】【HDU3585】【maximum shortest distance】
- cocos2d-x 显示触摸操作(单击显示效果浪潮,对于视频演示)-绩效转型
- ECNUOJ 2857 编辑距离
- Bellman ford 最短路径算法
- IOS面试题(2)----线程
- Cocos2d-x学习笔记(1)
- 太阁5 800人物 喜好
- 安卓SDK文件目录
- ide打包
- 让字符串中的某一个数字改变
- 2015.7.5 HNCU第二次选拔赛
- hdu 5131 Song Jiang's rank list
- shell中的函数参数
- ubuntu10.04下修改mysql的datadir的问题