openfire Android学习(六)----总结】的更多相关文章

Xmpp的一些方法整理到一个工具类中了 XmppConnection.java [java] view plaincopy [java] view plaincopy import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import ja…
以前学习过用Scoket 建立聊天,简单的建立聊天是没问题的,但如果要实现多人复杂的聊天,后台服务器代码就比较复杂,对于我这新手来讲就比较难了.后来在网上看到用openfire做服务器,利用强大的Smack API库来实现IM聊天就简单多了. 网上也有很多关于这方面的资料,我就在这里把网上的资料和自己的理解总结一下和大家一起交流学习. 需要用到以下几个工具: Openfire  最新版本(openfire 3.8.1) 下载地址:http://www.igniterealtime.org/dow…
openfire 中的会议室不像QQ群一样,不能保存那些离线用户,加入会议室后,一旦断开连接,就会离开会议室. 虽然如此,但如果要实现也不是不可能,我们可以自己做后台来保存,有兴趣的可以去试着实现一下,这里就不实现了. 好了,下面我们就一起来学习一下创建会议室.加入会议室以及查询会议室中的所有成员: 一.创建会议室 注释都写的很清楚,不做太多解释. 需要配置更多信息,可以到 http://xmpp.org/extensions/xep-0045.html  中15.5.3 muc#roomcon…
1socket的作用 通过http去获取服务器的数据在有些情况下是行不通的,所有使用socket与服务器通信也是必须掌握的 2.代码 好了上代码,代码中有解释,首先是简单的服务端代码 package org.tonny; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.…
1.常用Android控件最终都会继承自View类 2.ViewGroup是一些布局类列表的基类,包括View和ViewGroup 3.构造界面的三种方法    a.完全使用代码(太灵活,而不好维护)    b.在xml文件中定义(不太灵活)    c.结合两种方法,在xml文件中定义静态部份,在代码中实现灵活部分   4.定义       视图.部件.控件:表示一种用户界面元素       容器:包含视图的视图.例如网格,网格中的每一个单元格是一个视图       布局:容器和视图的可视排列,…
搭建好OpenCV4Android环境后,就要着手开发自己的应用了.对于一个没有OpenCV基础的人来开发OpenCV应用确实有点难度,不过我们可以从samples里学起,结合javadoc和万能的网络开发一个简单的应用应该不难.为了简单,我们采用的是纯粹的java API不涉及JNI,等对这一部分熟悉之后再来采用JNI实现. 首先对OpenCV的android应用来个感性的认识,把samples中的image-manipulations安装到手机上(手机上先安装好OpenCV manager…
首先要创建连接监听器,用来监听连接状态,这里我写了一个类 继承了ConnectionListener,重写了里面5个方法,最重要的两个方法connectionClosed()和connectionClosedOnError() 前者为连接正常断开,后者是连接异常断开,不管是正常还是异常,我们都要监听到 这里写了一个定时器,两秒进行连接一次,注释写的也很清楚,不做太多介绍 要注意的是我把用户名和密码都存到sharePreferences中了 [java] view plaincopy packag…
一.查询所有分组 通过Roster来获取所有分组,Roster可以通过connection.getRoster()来得到. [java] view plaincopy /** * 获取所有组 * * @param roster * @return 所有组集合 */ public static List<RosterGroup> getGroups(Roster roster) { List<RosterGroup> grouplist = new ArrayList<Rost…
一切就绪,新建一个android测试工程: 上网权限配置,界面绘制啥的,这里就不说了. 首先 导入一个smark包.这个是用来维护长连接的,也可以是asmark.我用的是asmark 先普及一些基本知识: 在xmpp中,所有东西的传输都是通过一个XMPPConnection的对象来进行传输的. 它给一个xml头,当服务器收到xml尾的时候,认为一次连接结束了 既然这样的话我们第一步就是拿到这个连接 /** * 连接服务器 * * @return */ public boolean conServ…
一.单人聊天 1)发送消息: 首先要获取一个聊天窗口,getConnection()为获取连接connection的方法,调用getFriendChat()获取 [java] view plaincopy private Map<String, Chat> chatManage = new HashMap<String, Chat>();// 聊天窗口管理map集合 /** * 获取或创建聊天窗口 * @param friend 好友名 * @param listenter 聊天監…