2015-11-14 1 views
0

comment détecter la perte de connexion au réseau aussi vite que possibleComment vérifier lorsque l'appareil ios juste perte de connexion à Internet

maintenant im en utilisant le cadre de reachabitity pour rapide et il faut abouut 3 sec pour détecter qu'il n'y a réseau utilisateur peut donc faire le crash de l'application

ici comment je vérifierai:

func setupReachability() { 
    do { 
     self.reachability = try Reachability.reachabilityForInternetConnection() 
    } catch { 
     print("Cannot setup reachability monitoring") 
     return 
    } 

    self.reachability!.whenReachable = { reachability in 
     self.loginButton(true) 
    } 
    self.reachability!.whenUnreachable = { reachability in 
     self.loginButton(false) 
    } 

    do { try self.reachability!.startNotifier() } catch { 
     print("Cannot start reachability monitoring") 
     return 
    } 

    print("Started reachability") 
} 
+0

Vous devez faire usage de la gestion des erreurs dans vos demandes et ne pas simplement croire aveuglément que votre utilisateur a toujours internet. L'accessibilité n'est pas si rapide (ce que vous avez découvert). Mais l'erreur est dans la logique de vos requêtes, pas dans l'accessibilité, car leur internet peut changer au milieu de la requête et vous vous écraserez de toute façon. – sunshinejr

+0

va faire une erreur de gestion, merci :) –

Répondre

1

Vous toujours, toujours, devez gérer les erreurs dans vos connexions. Vous absolument ne pouvez pas compter sur l'accessibilité. Vous ne pouvez pas non plus compter que votre connexion va au serveur que vous voulez pour vous connecter. Il est possible et pratique que vous obteniez une réponse d'un serveur totalement différent dans un format totalement différent de ce à quoi vous vous attendiez, et vous devez gérer cela. (Apportez votre application au Starbucks le plus proche et vérifiez si elle survit).