2015-10-21 1 views
0

Voici mon code:tonymillion joignabilité ne fonctionne pas jusqu'à ce qu'une connexion changer

self.reachability = Reachability.reachabilityForInternetConnection() 
    self.reachability.reachableBlock = { 
     (let reach: Reachability!) -> Void in 
     dispatch_async(dispatch_get_main_queue()) { 
      print(true) 
     } 
    } 
    self.reachability.unreachableBlock = { 
     (let reach: Reachability!) -> Void in 
     dispatch_async(dispatch_get_main_queue()) { 
      print(false) 
     } 
    } 
    self.reachability.startNotifier() 

J'ai appelé cela dans viewDidAppear, mais rien ne se passait. Cependant, lorsque j'ai mis l'iPhone en mode vol, false a été imprimé immédiatement. Et quand j'ai éteint le mode de vol, true a été également imprimé.

Ce dont j'ai besoin est de vérifier la disponibilité du réseau au lieu de changer. Où est le problème?

Répondre

0

Les blocs sont exécutés lorsque les changements d'état de joignabilité, si vous devez vérifier l'état de joignabilité en cours et ne pas attendre un changement que vous pouvez alors faire:

if self.reachability.isReachable() { 
    // reachable 
} else { 
    // not reachable 
}