基于openfire实现的androidpn的推送

 androidpn服务器端是java语言实现的,基于openfire开源工程,Web部分采用的是spring框架,这一点与openfire是不同的。
 Androidpn服务器包含两个部分,
 一个是监听特定端口上的XMPP服务,负责与客户端的XMPPConnection类进行通信,作用是用户注册和身份认证,并发送推送通知消息。
 另外一部分是Web服务器,采用一个轻量级的HTTP服务器,负责接收用户的Web请求。
       主要的四个组成部分,分别是SessionManager,Auth Manager,PresenceManager以及Notification Manager。
SessionManager负责管理客户端与服务器之间的会话,
Auth Manager负责客户端用户认证管理,
Presence Manager负责管理客户端用户的登录状态,
NotificationManager负责实现服务器向客户端推送消息功能。



系统客户端基于Android手机平台。
采用XMPP作为即时通讯协议。XMPP是基于XML,实现任意两个网络终端准实时的交换结构化信息的通信协议。采用Android平台提供的XML解析包对XML进行解析。由于应用活动都运行于主线程。故用多线程技术来解决系统通讯问题。
针对通信安全问题.系统的用户信息和聊天信息在客户端存储在Android平台自身所带的SQLite数据库中,

通讯模块负责与服务器建立通讯旧。
通过创建3个线程来进行处理。分别负责消息的发送、接收和心跳信息的发送;
解析模块主要用来解析XML数据流。根据解析元素不同类型封装成不同的数据对象:
数据模块定义整个客户端中大部分的数据类型和对象;应用模块包括即时通信、图片浏览和音乐播放。是客户端和用户交流的接口;
加密模块对发送和接收的消息进行加解密。以确保通讯数据的安全。多媒体文件和图片文件存储在Android平台虚拟文件存储设备SD Card中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值