andorid、服务器基于XMMP协议的即时通讯系统
原文地址:http://user.qzone.qq.com/1061932907/blog/1375351119#!app=2&via=QZ.HashRefresh&pos=1375351119
下载地址:http://iask.sina.com.cn/u/1985291027/ish
需要下载androidpn-client-0.5.zip,XmmpServer.part1.rar,XmmpServer.part2.rar,XmmpServer.part3.rar
解压androidpn-client-0.5.zip得到androidpn-client-0.5.0,将导入eclipse(for Android Developer
)中显示DemoAppActivity项目
其中PROJECT/RES/RAW/ANDROIDPN.PROPERTIES位手机客户端与服务端的通讯配置情况

包org.androidpn.client主要为与服务端间的通讯处理

其中NotificationPacketListener.java为接到到消息的类
XmppManager.java为注册、登录、发送消息、接受消息的实现
包ORG.ANDROIDPN.CLIENT.FILE为文件上传下载的实现

包org.androidpn.db为消息存存储的实现
包org.androidpn.demoapp为注册、登录、好友列表、会话列表、上传下载界面的实现
下面简要说下XMMP的服务端
需要安装mysql
将XmmpServer.part1.rar,XmmpServer.part2.rar,XmmpServer.part3.rar解压后得到XmmpServer将其导入eclipse(Eclipse Java EE IDE for Web Developers)后有两个project:XmmpServer和XmmpConsole

先说XmmpServer
project/src/config.properties为console的配置
spring-config.xml为与手机客户端的通讯端口

jdbc.properties为服务器与MYSQL间的配置

包org.androidpn.server.xmpp.handler为各类消息的分发

运行XmmpServer
右击XmmpServer项目-->run as--->java application然后选择org.android.pn.starter运行

运行成功后会有下列输出
此时服务器已经运行以来了,可以打开浏览器输入
http://127.0.0.1:8080
此时浏览中页面的实现在XMMPCONSOLE项目中,XMMPCONSOLE中的功能通过SESSIONMANAGER,NOTIFICATIONMANAGER来与XMMPSERVER交互实现

简单的测试方法
本人是同过局域网来测试以上功能的
需要的设备win7的笔记本电脑,无线路由器,android手机
上述XmmpServer,XmmpConsole需要运行在win7笔记本上,DemoAppActivity运行在android手机上
win7无线网卡配置一个固定的IP,网关为路由器的IP地址;手机端的IP地址设置为静态,并设置一个与WIN7电脑、无线路由在同一网关的IP地址。
运行电脑端的XmmpServer,打开手机端的DemoAppActivity,注册、登录,若有两台android的手机,都登录上去的话,可以看到对方是否在线,以及可以发送文本消息和各类文档
注意当前的实现实在ubuntu上实现的,在windows解压时要注意汉字的解码问题
273

被折叠的 条评论
为什么被折叠?



