开发手记——基于XMPP的Android即时通讯APP(一)

2015年已经走过了一个月的光景,在一月份,分享了两套视频教程。我个人看过了其中一些,还是很不错的,就是讲课的老师语速慢了点,偶尔有点发困,不知看过的朋友会不会有同感,呵呵。

关于已经开始的XMPP即时通讯客户端实际上一直是想完成的一个项目,只是一直被工作所困扰,一直没得空。好在现在有点时间,就忙里偷闲了。

那么作为第一篇文章,自然是开发环境的搭建和开发的前期准备。或许代码量不多,或许文章内容还显得很稚嫩,所以欢迎各位前辈前来拍砖,我喜欢板砖!

首先是服务器部分

这部分不会介绍太多,因为我们的重点在客户端的开发。

我这里选择的是Openfire,为什么选这个?配置简单,代码开放,用过

首先,这个服务器软件是跨平台的,兼容Windows、Linux、Mac。下载地址

在这个界面上,我们会看到Openfire的安装程序和绿色版压缩文件,还有Spark。都把他们下载下来。

这里有一个小技巧,如果你的系统中,安装的JDK是1.7及以上的32位版本,最好下载绿色版的Openfire,因为安装版会在安装过程刚刚开始的时候报错,导致无法继续(也或许是人品问题)。然后Spark直接下载exe安装就可以了,使用方法类似QQ,随便看看应该就能会用了,将来我们会使用这个客户端和我们开发的手机APP互通,相互加好友、聊天、传文件等等

解压我们刚刚下载得到的Openfire软件压缩包,放到一个完全英文的路径下,比如D:\Openfire,然后检查系统中的数据库软件。Openfire支持很多数据库连接,我这里以SQL Server 2008 R2为例,当然,如果系统中没有安装数据库引擎的话,也可以选择嵌入式的数据库。

如图,首先打开SQL Server 配置管理器,确保数据库引擎已经在运行。

最后,确保TCP连接是被允许的,如下图配置即可:

重新启动SQL Server服务,新建一个名叫“Openfire”的数据库,就可以开始服务器的配置了。

启动服务器,打开解压后得到的文件夹,进入bin目录,双击openfire.exe,稍等程序运行一会儿后,单击“Launch Admin”按钮,打开控制台。

程序可选中文语言,一路下一步,来到数据库配置界面,我这里选择SQL Server,然后输入下列信息:

数据库URL:jdbc:jtds:sqlserver://localhost:1433/Openfire;appName=jive

用户名和密码是sa。(安装SQL Server时填写)

接下来继续下一步,填入管理员的密码(切记,每次登录要使用)后,就完成了服务器的配置了。

最后登录服务器,使用刚才设置好的管理员密码登录,如果一切顺利,将会得到如下图所示的管理界面:

为了测试服务器的运作是正常的,使用之前下载的Spark客户端进行注册和登录即可,这一步骤就不再赘述了,使用过QQ的朋友应该都会很快上手。

如果能够正常注册和登录,那么就证明我们的服务器配置正确无误,就可以使用它来配合开发Android客户端APP了。这款APP将会用到asmack.jar的库,在接下来的连载里,将会详细介绍该库的使用以及应用如何保持长连接等内容,希望大家前来捧场!

时间: 2024-12-29 11:16:54

开发手记——基于XMPP的Android即时通讯APP(一)的相关文章

开发手记——基于XMPP的Android即时通讯APP(三)

首先祝各位读者新年快乐,博主在这里给大家拜万年啦!而且马上要到元宵节,顺祝大家元宵节快乐! 上一次谈了注册和登录的编码技巧,这一次我们来谈谈加好友的技巧. [搜索用户]: XMPP协议为我们提供了完善的好友查找功能,而且通过aSmack的库,能够轻易实现模糊查找功能.为了保证应用程序的通用性.在搜索时,我们最好按如下的方法做: UserSearchManager usm = new UserSearchManager(xmppConnection); Form searchForm = usm.

开发手记——基于XMPP的Android即时通讯APP(二)

隔了几天,把应用的登录.注册部分做的比较完善了,当然这只是个人感觉哈. 今天要说的,都是干货! 首先,没有大片代码:其次,在网上一般找不到:最后,真的让你节约开发时间!这也是为什么时隔好几天才会发第二篇连载. 既然说,没有大片代码,一般的登录.注册流程这里就不提了,百度谷歌一搜一大堆,而且基本都能用.这里说几点注意 [一]关于后台服务: 官方的建议,要使用"START_STICKY"这种类型的后台服务.为什么要用这种服务,官方的说法很明朗: 这点和Android Developer官网

放大招了!基于Bmob的Android即时通讯应用源码 (一)

今天给大家分享系列干货:基于Bmob的Android即时通讯应用源码.目前Android端已更新到V1.1.1版本.IOS端已推出V1.0.1版本. 以后将持续更新,分享源码!! 脚的好就多多回复 一.已实现功能: 1.支持好友管理功能,包括添加好友.删除好友.获取好友列表,也可以与你已有的用户系统完全解耦: 2.支持的消息类型:纯文本.聊天表情.图片.位置.语音: 3.支持会话的本地化存储: 4.自定义消息处理机制: 5.同一账号多处登陆强制下线: 6.支持消息回执发送:已发送.已阅读两种状态

放大招了!基于Bmob的Android即时通讯应用源码[升级版]

此帖为  放大招了!基于Bmob的Android即时通讯应用源码 (一) 续篇,主要是更新的功能. 一.更新更能: 1.新增支持陌生人聊天,允许发送给非好友用户: 2.新增支持自定义消息发送,便于开发者扩展: 3.新版本大幅度增加稳定性和及时性,保证百分百到达: 4.排除web后端推送对客户端的影响. 二.更新讲解: 1.如果你希望能和所有人(不局限于好友关系)进行聊天,那么这一版本就解决了这个问题. 如果你想看到效果,可以点击附近的人,你找到一个非好友用户,再查看他的资料,这一页面下方有个"发

.net平台 基于 XMPP协议的即时消息服务端简单实现

.net平台 基于 XMPP协议的即时消息服务端简单实现 昨天抽空学习了一下XMPP,在网上找了好久,中文的资料太少了所以做这个简单的例子,今天才完成.公司也正在准备开发基于XMPP协议的即时通讯工具所以也算是打一个基础吧!如果你还没有了解过XMPP请先阅读附录中链接的文章,本实例是基agsXMPP上开发的,agsXMPP是C#写的支持开源XMPP协议软件,我们可以在agsXMPP上快速构建自已的即时通讯平台,我的这个例子只是修改了服务器端,因为agsXMPP本身自带的服务器端没有实现聊天功能.

Android即时通讯服务,类似QQ的聊天工具,源码分享

Android即时通讯服务,类似QQ的聊天工具 基于bmob开发完成 下面有源码分享,敬请下载,多多支持回复 1.1      手机必须要有网络 1.2      手机必须要有SIM卡 1.3      手机必须要挂载有SDCAR 源码在此 链接: http://pan.baidu.com/s/1jGCIFsy 密码: 9eqc

源码提供!Android即时通讯和sns开源项目汇总

博客原地址: Android即时通讯和sns开源项目汇总 这是一个整理即时通讯(IM)和社交系统(SNS)优秀开源项目的文档,项目上传github欢迎提交更新. github地址:https://github.com/CameloeAnthony/Perfect_IM_SNS 一 即时通讯和社交系统平台 1 环信(推荐) 2 阿里百川 云旺 3 融云 4 OpenSNS -- #二 基于环信的即时通讯开源项目 数据整理自环信官网,网络数据和github.更多信息请参考环信官方网站和ImGeek

基于mina的的android即时通信app

前段时间研究mina框架,发现很适合做即时通信后台,经过几个月的研发本人开发了一套基于mina框架的android即时通信app,暂命名为E聊.鉴于本人能力有限还存在不少bug,希望大家原谅并指出,bug和部分功能还在不断完善中,过段时间部分代码会进行开源,敬请关注. 主要功能包括: 1.私聊,群聊 2.支持文字.语音.图片.文件.小视频等 3.位置共享(开发中) 4.朋友圈(图文发布.评论等,小视频功能正在开发中) 5.上线通知,断线重连 6.接收离线消息 7.更多功能正在筹划中... 演示图

Android即时通讯1

1.Openfire配置参考地址 http://blog.csdn.net/sky_monkey/article/details/9495571 2.Mysql navicate11.0.10破解补丁件下载路径 http://download.csdn.net/detail/long_sheng/6442857 3.XMPP Android 即时通讯参考材料阅读 http://blog.csdn.net/limb99/article/details/40435899 http://blog.cs