iOSアプリケーションでXMPPサーバーに接続しようとしています。 XMPPFrameworksを使用していて、何らかの理由でXMPPストリームデリゲートがサーバーに接続しようとした後で呼び出されていません。私はそれがそうであるとは思わないので、私のコンピュータ上のサードパーティのXMPPアプリケーションを使用してログイン情報をダブルチェックしました。このデリゲートを正しく設定していませんか?間違った構文を使用していますか?ビューコントローラではなく、アプリケーションデリゲートでこれを設定する必要がありますか?どんな助けでも大歓迎です。以下は私のコードですXMPPストリーム代理人が呼び出されていませんか? Swift 3
import UIKit
import XMPPFramework
class ViewController: UIViewController, XMPPStreamDelegate {
override func viewDidLoad() {
super.viewDidLoad()
connect()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func connect() {
let stream = XMPPStream()
stream?.addDelegate(self, delegateQueue: DispatchQueue.main)
stream?.myJID = XMPPJID.init(string: "XXXXXXXXXXX")
stream?.hostName = "XXXXXXXXX"
stream?.hostPort = 5222
do {
try stream?.connect(withTimeout: XMPPStreamTimeoutNone)
} catch {
print("error connecting")
}
}
func xmppStreamDidConnect(sender: XMPPStream) {
print("connected!")
do {
try sender.authenticate(withPassword: "XXXXXXXXXX")
} catch {
print("error registering")
}
}
}
#タイラーペレイラはあなたに何か解決策がありますか、同じ問題に直面しています。 – Manish
@タイラー・ペレイラ、私も同じ問題を抱えています。 – Bucket
いいえ解決策を見つけられませんでした。私はXMPPを使用しないチャットシステムを作るために私自身のロジックを思いついた。 –