使用iOS和Swift 3的代理方法中未接收xmpp状态
我在用猫鼬。我在Ubuntu服务器上,Swift 3在客户端。我无法在委托函数中获取用户的状态。我已经为订阅状态实现了这样的代码,这不是调用使用iOS和Swift 3的代理方法中未接收xmpp状态,ios,xmpp,xmppframework,Ios,Xmpp,Xmppframework,我在用猫鼬。我在Ubuntu服务器上,Swift 3在客户端。我无法在委托函数中获取用户的状态。我已经为订阅状态实现了这样的代码,这不是调用 func xmppRoster(_ sender: XMPPRoster!, didReceivePresenceSubscriptionRequest presence: XMPPPresence!) { debugPrint("XMPPRoster : didReceivePresenceSubscriptionRequest ")
func xmppRoster(_ sender: XMPPRoster!, didReceivePresenceSubscriptionRequest presence: XMPPPresence!) {
debugPrint("XMPPRoster : didReceivePresenceSubscriptionRequest ")
debugPrint(presence)
sender.acceptPresenceSubscriptionRequest(from: presence.from(), andAddToRoster: true)
}
此外,当用户发送状态信息时,我无法在此委托方法中获取用户的状态信息:
func xmppStream(sender: XMPPStream!, didReceivePresence presence: XMPPPresence!) {
debugPrint(presence)
}
请告诉我哪里出错了 问题在于猜测方法声明从Objective-C到Swift的正确转换。以下XMPPFramework回调声明在Swift 4中有效:
@objc func xmppStream(_ stream:XMPPStream, didReceivePresence presence:XMPPPresence) {
print("\(presence)")
}
请阅读-总结是,这不是一个理想的方式来解决志愿者,可能会适得其反获得答案。请不要将此添加到您的问题中。