Reachability status changed
Bonjour tout le monde,
je suis entrain de faire une application dans laquelle je teste le changement de l'état de la connexion internet, j'ai fait presque la même chose que dans l'exemple fournit par Apple
Lorsque je lance l'application, une alert indiquant l'état de la connexion s'affiche, mais lorsque l'état de la connexion change rien ne se passe.
Si quelqu'un sait comment résoudre ce problème, merci bien de me le dire
Merci d'avance
je suis entrain de faire une application dans laquelle je teste le changement de l'état de la connexion internet, j'ai fait presque la même chose que dans l'exemple fournit par Apple
<br />
#import "FindMeAppDelegate.h"<br />
@implementation FindMeAppDelegate<br />
@synthesize window = _window;<br />
- (void) congigureAlert: (Reachability*) curReach<br />
{<br />
NetworkStatus netStatus = [curReach currentReachabilityStatus];<br />
BOOL connectionRequired= [curReach connectionRequired];<br />
NSString* statusString= @"";<br />
switch (netStatus)<br />
{<br />
case NotReachable:<br />
{<br />
statusString = @"Access Not Available";<br />
UIAlertView* reachAlert = [[UIAlertView alloc] initWithTitle:@"Internet status"<br />
message:statusString<br />
delegate:self<br />
cancelButtonTitle:@"Okay" otherButtonTitles: nil];<br />
[reachAlert show];<br />
connectionRequired= NO;<br />
break;<br />
}<br />
<br />
case ReachableViaWWAN:<br />
{<br />
statusString = @"Reachable WWAN";<br />
UIAlertView* reachAlert = [[UIAlertView alloc] initWithTitle:@"Internet status"<br />
message:statusString<br />
delegate:self<br />
cancelButtonTitle:@"Okay" otherButtonTitles: nil];<br />
[reachAlert show];<br />
break;<br />
}<br />
case ReachableViaWiFi:<br />
{<br />
statusString= @"Reachable WiFi";<br />
UIAlertView* reachAlert = [[UIAlertView alloc] initWithTitle:@"Internet status"<br />
message:statusString<br />
delegate:self<br />
cancelButtonTitle:@"Okay" otherButtonTitles: nil];<br />
[reachAlert show];<br />
break;<br />
}<br />
}<br />
}<br />
- (void) updateInterfaceWithReachability: (Reachability*) curReach<br />
{<br />
if(curReach == internetReach)<br />
{<br />
[self congigureAlert: curReach];<br />
}<br />
else {<br />
[self congigureAlert: curReach];<br />
}<br />
<br />
}<br />
- (void) reachabilityChanged: (NSNotification* )note<br />
{<br />
Reachability* curReach = [note object];<br />
NSParameterAssert([curReach isKindOfClass: [Reachability class]]);<br />
[self updateInterfaceWithReachability: curReach];<br />
}<br />
<br />
- (void)applicationDidFinishLaunching:(UIApplication *)application<br />
{<br />
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachabilityChanged:) name: kReachabilityChangedNotification object: nil];<br />
<br />
internetReach = [Reachability reachabilityForInternetConnection] ;<br />
[hostReach startNotifier];<br />
[self updateInterfaceWithReachability: internetReach];<br />
[_window makeKeyAndVisible];<br />
}<br />
@end<br />
Lorsque je lance l'application, une alert indiquant l'état de la connexion s'affiche, mais lorsque l'état de la connexion change rien ne se passe.
Si quelqu'un sait comment résoudre ce problème, merci bien de me le dire
Merci d'avance
Mots clés:
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
J'aimerai savoir quoi quoi cela sert :
je voit pas l'intérêt de cette méthode
Que je sache, hostReach est nul, donc aucun objet Reachability ne notifie quoi que ce soit.
ohhhh, en fait l'erreur était ça, merci Baarde.
Il fallait que je mette [internetReach startNotifier] à la place