Android Smack开发笔记
此文是自己在本地进行的测试。由于openfire等都是安装在电脑上,而运行是在真机上运行的。所以在测试的时候必须保证电脑和手机是在同一个网络环境下,不然会无法连接到openfire服务器。
一、测试环境下载配置
至于测试环境的下载配置可以参考作者:https://blog.youkuaiyun.com/u013086747/article/details/75216653 该文章里面很详细的介绍了如何下载配置测试环境。
二、在安卓项目中引用smack。
我是基于smack 4.1.9开发的。
dependencies {
compile 'org.igniterealtime.smack:smack-android:4.1.9'
compile 'org.igniterealtime.smack:smack-tcp:4.1.9'
compile 'org.igniterealtime.smack:smack-im:4.1.9'
compile 'org.igniterealtime.smack:smack-extensions:4.1.9'
}
三、新建config目录,在该目录下新建MyXmppConfig类继承XMPPTCPConnection。
整体代码较多,可以分开来看,每一个方法名的意思就代表了实现的功能。具体代码实现如下:
package com.xie.com.imoocmusic.config;
import android.util.Log;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.ConnectionListener;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.tcp.XMPPTCPConnection;
import org.jivesoftware.smack.tcp.XMPPTCPConnectionConfiguration;
public class MyXmppConfig extends XMPPTCPConnection {
private static MyXmppConfig connect;
public MyXmppConfig(XMPPTCPConnectionConfiguration config) {
super(config);
}
/**
* 初始化连接数据
* @return
*/
public static synchronized