[英]iphone Reachability issues
我的應用程序需要Internet連接,因此在ApplicationDelegate的applicationDidFinishLaunching
我正在運行以下命令:
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachabilityChanged:) name: kReachabilityChangedNotification object: nil];
hostReach = [[Reachability reachabilityWithHostName: @"www.apple.com"] retain];
[hostReach startNotifer];
[self updateInterfaceWithReachability: hostReach];
但是由於某種原因,這似乎觸發了兩次,因為記錄的內容如下:
2010-02-04 14:25:48.004 myApp[201:207] Reachability Flag Status: -- ------- networkStatusForFlags
2010-02-04 14:25:48.240 myApp[201:207] STATUS: Access Not Available
2010-02-04 14:25:48.499 myApp[201:207] Reachability Flag Status: -- ------- networkStatusForFlags
2010-02-04 14:25:48.517 myApp[201:207] STATUS: Access Not Available
可以正常工作,這很好,但是我有一條警報消息通知用戶沒有連接,它彈出兩次...
為什么可達性通知程序會觸發兩次?
不知道為什么它會彈出兩次。 您是否嘗試注釋掉對startNotifier
的調用? 它可能會對reachabilityWithHostName:
方法進行初步檢查。
在這種情況下,變通辦法是最合適的解決方法,例如:
static bool userNotifiedOfReachability = NO;
...
- (void)updateInterfaceWithReachability:(Reachbility *)reachability {
if (!userNotifiedOfReachability) {
// Notify User
...
userNotifiedOfReachability = YES;
}
}
這對於“請稍后再嘗試啟動該應用程序”消息來說是適當的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.