2017-02-14 72 views
1

我在xmppStream上激活xmppReconnect,但如果我沒有網絡連接,那麼代理方法reconnect不會被調用,因此即使網絡再次可用,也不會嘗試連接。XmppReconnect的代理方法不叫

_xmppReconnect = [[XMPPReconnect alloc] init]; 
[_xmppReconnect activate:_xmppStream]; 
[_xmppReconnect addDelegate:self delegateQueue:dispatch_get_main_queue()]; 

- (BOOL)xmppReconnect:(XMPPReconnect *)sender shouldAttemptAutoReconnect:(SCNetworkReachabilityFlags)reachabilityFlags 
{ 
    NSLog(@"shouldAttemptAutoReconnect:%u",reachabilityFlags); 
    return YES; 
} 

- (void)xmppReconnect:(XMPPReconnect *)sender didDetectAccidentalDisconnect:(SCNetworkReachabilityFlags)connectionFlags 
{ 
    NSLog(@"didDetectAccidentalDisconnect:%u",connectionFlags); 
} 

回答

0

通過使用Reachability可以肯定的得到通知網絡狀態的變化&從而可靠地執行你的操作。
閱讀:Determining Reachability