androidpn是基于XMPP协议的用于向Android客户端推送文本信息的一套开源的工具。它帮我们做了那些维护Socket长连接等等的事情。 

在真正把它使用在我们的项目中之前,我们先领略一下推送。

第一步,下载androidpn服务器端与客户端。网址:http://sourceforge.net/projects/androidpn/files/

第二步,启动服务器端与客户端,通过Web页面推送。详细的步骤如下:

---------------------------------------------------------------------

(原文:http://www.devdiv.com/thread-101586-1-1.html )

关于服务器端向Android客户端的推送,主要有三种方式:
1.客户端定时去服务端取或者保持一个长Socket,从本质讲这个不叫推送,这是去服务端拽数据。但是实现简单,主要缺点:耗电等
2.Google的C2DM,具体不细说,缺点,服务器在国外,你懂得,不是很稳定。
3.XMPP协议,它是一种基于XML的传递协议,具有很强的灵活性和可扩展性。它的特点是将复杂性从客户端转移到了服务器端。
听说GTalk、QQ、IM等都用这个协议。

接下来说说XMPP在android客户端上的应用。分两部分:服务端搭建和客户端实现。

服务端搭建:
如果想测试一下功能,直接用搭建好的服务就行,下载androidpn-server-0.5.0-bin.zip ,由于附件太大,上传不上来
下载地址:http://115.com/file/clot4cuz#
点击bin目录下得run.bat,直接搭好服务,在浏览器上输入 http://127.0.0.1:7070  就进入管理界面。如下图:

如果你想自己更改服务,下载附件 androidpn-server-0.5.0-src.zip(303.73 KB, 下载次数: 11839)

2011-10-27 17:12:42 上传 下载次数: 11839

,自行修改。

展示一下管理的发送页面:

客户端实现:
下载工程源码 androidpn-client-0.5.0.zip(347.74 KB, 下载次数: 11873) 2011-10-27 17:12:44 上传 下载次数: 11873

,导入工程,运行前更改一处IP地址,修改androidpn.properties文件中的xmppHost为xmppHost=10.0.2.2
原因:模拟器访问本机需要改成10.0.2.2,下图为SDK中说明。


运行界面上图:


从服务端发送消息,客户端运行的界面:


终于看到推送了。

---------------------------------------------------------------------

第三步,需要补充一句的就是,上面下载的server端不是tomcat版本的,而是jetty框架。需要tomcat版本的,往下看:

关于将server端转化为tomcat版本,并且实现服务端重启后,客户端自动连接 http://www.iteye.com/topic/1117043#2266007

有兴趣的朋友也可以看看这哥们其他相关博文。他从理论和实际结合上分析的非常棒。

 

更多相关文章

  1. Nginx系列教程(二)| 一文带你读懂Nginx的正向与反向代理
  2. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  3. 关于Android网络传输加密的总结
  4. 又一个博客园Android客户端(新版本:V1.1.0,附APK下载)
  5. 【新知提升】Android中的消息推送
  6. 【移动开发】WIFI热点通信(二)
  7. Android(安卓)IPC机制(二)用Messenger进行进程间通信
  8. 产品必懂的技术必修(三)
  9. android集成支付宝sdk

随机推荐

  1. Python一行代码搞定炫酷可视化,你需要了解
  2. 震惊了!每30秒学会一个Python小技巧,Github
  3. GitHub Actions,卧槽!牛批!
  4. 如何用 Python 给照片换色
  5. 原创丨我在 GitHub 上发现了哪些好的学习
  6. 还记得当年你是如何接触Python的吗?
  7. 我们终于可以把 bug 留给子孙后代了
  8. 牛逼了!Python代码补全利器,提高效率告别99
  9. 分析B站100万+视频,发现竟然有这么多干货
  10. 如何做出好看的可视化视频?这是我最舍不得