使用xmpp实现消息推送的一个简单的sdk
功能: 开发者将这个sdk嵌入到自己的项目,即可实现在openfire服务端发送广播消息在所嵌入的项目中以notification的方式推送出来; 此sdk优化了与服务器连接确保不会胡乱掉线。 因为本人能力有限,这个sdk仅作项目参考或者学习之用,开源出来,希望对别人有所帮助。
使用方法: 调用SDKInitializer类的initialize方法,这个方法接受四个参数: /** * 初始化本接收器 * * @param userID 开发者平台上的用户的用户名 * @param context 上下文 * @param platform 开发者的应用标示 */
这个userId是开发者提供的本app的用户id,不是jid,jid在sdk钟自动生成并注册,context是调用这个方法的上下文, platform是开发者项目名称,是在消息群发的时候作为区分的标示(选择性群发)。
实现原理: 原理很简单,就是用初始化的时候向openfire服务器注册账户, 如果服务器已经存在这个账户会返回一个错误码,利用这个错误码可以判断这个账户是否已经注册,如果已经注册,则使用这个账户登录。 当注册成功或者已经注册,登录到openfire服务器,这样,openfire服务器能够利用自己的广播页面向所有嵌入这些sdk的应用发送广播。
说明:这个sdk本身不完善,只能做学习用,网上其实已经有了类似需求的开源项目,需要的可以自行百度。
欢迎建议和批评指正。 by author:larson (student)