我正在尝试使用smack库的asmack构建,但是在第一步中遇到了困难。以下代码显示XMPPTCPConnection内的host为null。我已经在http://asmack.freakempire.de/
测试了可用的jar版本4.0.0和4.0.4public class MainActivity extends Activity {
public static final String HOST = "talk.google.com";
public static final int PORT = 5222;
public static final String SERVICE = "gmail.com";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Context context = getApplicationContext();
SmackAndroid asmk = SmackAndroid.init(context);
ConnectionConfiguration connConfig = new ConnectionConfiguration(HOST, PORT, SERVICE);
connConfig.setSecurityMode(SecurityMode.enabled);
connConfig.setReconnectionAllowed(true);
XMPPTCPConnection connection = new XMPPTCPConnection(connConfig);
Log.i("XMPPChatDemoActivity", "Connection host " + connection.getHost());
}
}
日志只显示I/XMPPChatDemoActivity(30917): Connection host null
行。
我正在测试一个真正的Android 4.0设备。 ProGuard已被禁用,因为我正在使用ant debug
模式进行编译。
答案 0 :(得分:0)
不,它不会忽略ConnectionConfiguration的host
设置。主持人'只有在您调用connect()
后才会初始化,因为当使用XMPP和DNS SRV RR时,用于建立连接的实际主机只有在DNS查找完成后才可用。