使用 xmppFramework 连接到服务器时卡住

Stuck when connect to server when using xmppFramework

我开始使用带有 iOS 的 xmppFramework 和本地 ejabberd 服务器(运行 on "localhost:5280")。我使用 "username: admin, password: admin"

登录了 ejabberd 服务器

我正确地检查了我的代码并添加了委托 "XMPPStreamDelegate"。 我遇到的问题是我的代码调用委托函数 "xmppStreamWillConnect" 但它没有调用 "xmppStreamDidConnect".

一般来说,什么可能导致这个问题?

我的代码:

func connect() {
    if !self.xmppStream.isDisconnected() {
        return
    }
    self.xmppStream.hostName = "localhost:5280"
    self.xmppStream.myJID = XMPPJID(string:"admin@localhost")
    try! self.xmppStream.connect(withTimeout: 10)
    if self.xmppStream.isConnected(){
        print(true)
    }
    self.xmppStream.startTLSPolicy = XMPPStreamStartTLSPolicy.required
    self.xmppStream.supportsStartTLS()
    print("ok")
}

func xmppStreamWillConnect(_ sender: XMPPStream!) {
    print("will connect ")
}
func xmppStreamDidConnect(_ stream: XMPPStream!) {
    print("Stream: Connected")
    try! stream.authenticate(withPassword: self.password)
}

打印结果为: 好的 将连接

如果你做本地主机,肯定是行不通的。 模拟器将 运行 在本地主机上,你不能 运行 都在同一个本地主机上。