Код ниже работает нормально, как и ожидалось.Во время вызовов XMPPStreamDelegate объект делегатаsenceservice выбрасывает nill и не распознается, здесь приведенный ниже код вызывает экземпляр классаsenceservice, который включает свой собственный экземпляр делегата и запускает значение для контроллера представления, как и ожидалось.
class PresenceService: NSObject{
var delegate: PresenceServiceDelegate?
public override init()
delegate = self
}
// Singleton instance
public class var sharedInstance : PresenceService {
struct PresenceServiceInstance {
static let instance = PresenceService()
}
return PresenceServiceInstance.instance
}
}
extension PresenceService: XMPPStreamDelegate {
public func didReceive presence() // XMPPStrem delegate
// My Presence Service delegate not at all calling (delegate throws nil )
PresenceServiceInstance.sharedInstance.delegate?.didPresenceReceive()
}
}