文件名称:Android聊天项目D3Xmpp.zip
文件大小:19.89MB
文件格式:ZIP
更新时间:2022-08-05 02:09:45
开源项目
D3Xmpp 是一个完整的 XMPP 的 Android 的项目服务端使用 openfire 3.9.3客户端使用 Android 4.2.2集成第三方:百度地图sdkasmack.jaruniversal-image-loader-1.9.3.jar功能注册登录会员会员个人资料修改基本聊天语音、图片、表情、动态表情、发送位置聊天(位置需要注册百度api)群聊(openfire需要安装插件)位置共享(实验功能,openfire需要安装插件)项目结构包及其类的作用:1.activites和fragmentsactivites和fragments放的类是一样的,是放activity和fragment的。作用是android的Controller层。BaseActivity—— 一切activity的基类,继承了D3Activity。主要是实现注解实例化ChangePwdActivity—— 修改密码页ChatActivity—— 聊天页。Intent必须参数chatName(聊天对象,单聊为对方id,群聊为群名称),可选参数chattype。chatType有单聊和群聊两个参数,不传则默认单聊。ChoseActivity—- 群组邀请页面。Intent必须参数roomName和成员membersCropImageActivity—- 截图页面。isAutoSend为true时自动截图FriendActivity—- 好友详情页。必须参数usernameLoginActivity—- 登陆页。MainActivity—- 主页。使用fragments包住四个TAB页面MapActivity—- 地图页. 从聊天页的位置跳到此页面。必须参数lat,lonMyRoomActivity—- 我的群组页NewFriendActivity—- 我的新好友申请页PicSrcPickerActivity—- 弹出选择选图方式。拍照和图库RegActivity—- 注册页RoomMemActivity—- 群组成员SearchActivity—- 搜索好友页ShowPicActivitiy—- 展示大图页TempActivity—- 模板类,方便我复制生成一个新类而已WebActivity—- 一个全屏的webview//fragmentAdrFragment—- 位置页.原理:登录后的用户,每分钟上传一次自己的位置,如果下线则删除自己的位置。登陆后的用户,每分钟更新一次自己好友的位置,如果对方在线则在百度地图中渲染出红点。如果取消共享位置,则关闭以上功能MsgFragment—- “首页”消息原理:登录后的用户,通过XmppMessageInterceptor和XmppMessageListener两个类拦截自己发出和接收到的消息,拦截消息后更新到MsgFragment显示出来。ContactFragment—- 通讯录页原理:登录后的用户,通过XmppPresenceInterceptor和XmppPresenceListener两个类拦截自己发出和接收到的好友状态消息,拦截状态消息后更新到这里。MeFragment—- “我的”页2. com.d3.d3xmpp.adapter主要存放activity和fragment对应的list适配。懂android的都知道3.com.d3.d3xmpp.constant存放配置类,有三个:com.d3.d3xmpp.constant. Constants类是常用的配置com.d3.d3xmpp.constant. MyApplication类是全局Application,方便管理androidcom.d3.d3xmpp.constant. ImgConfig是图片类,用于优化图片加载,使用的universal-image-loader-1.9.3.jar4.com.d3.d3xmpp.dao 和 com.d3.d3xmpp.model是属于MVC模式中的Model。dao负责获取数据库的数据,并返回给Activitymodel是基础数据类5.com.d3.d3xmpp.d3View 和 com.d3.d3xmpp.util这是私人框架,集成了android开发中常用的一些方法及View。包括录音按钮RecordButton,加入了下拉刷新的MyListView,实现了注解实例view的D3Activity等等。6.com.d3.d3xmpp.xmpp(xmpp的核心):其他都是安卓开发者必须懂的东西。下面说xmpp类的作用 XmppConnectionListerner是xmpp的连接状态的listener,比如断线等XmppMessageInterceptor是发出消息的listener,在此拦截并持久化聊天纪录XmppMessageListener是收到消息的listener,在此拦截并持久化聊天纪录XmppPresenceInterceptor是本机发出好友消息的监听,比如添加好友,删除好友XmppPresenceListener是本机收到好友消息的监听,比如添加好友,删除好友XmppConnection是xmpp基本操作的核心类,包括登录,注册,聊天,修改密码,好友管理,群组管理等等。PS:该项目是本人在学习xmpp过程中总结的一些东西,代码组织凌乱,旨在帮助新入门xmpp学习xmpp的基本使用 标签:D3Xmpp