2012-01-18 68 views

回答

0

添加 「Reachability.h」 到您的UIViewController子類,並在適用情況下使用此代碼。

if (![[Reachability reachabilityForInternetConnection] isReachable]) { 
    [[[[UIAlertView alloc] initWithTitle:@"No Internet connection!" 
           message:@"You have no active internet connection. Please enable wi-fi and re-launch the app." 
           delegate:nil 
         cancelButtonTitle:@"Close" 
         otherButtonTitles:nil, nil] autorelease] show]; 
    return; 
    } 
0

我在檢查網絡可用性方面遇到類似問題。 Apple的可達性代碼將在iOS5 ARC功能下拋出錯誤。

終於讓我找到這個工作項目的GitHub https://github.com/tonymillion/Reachability

它很容易實現,指令在網站本身給。

BR, 哈日

1

正如大家所說,你需要使用Reachability.h和Reachability.m。 但是沒有人說通知的正確變體:

首先,您需要爲您的班級添加變量。這將是更好的聲明它專用於.m文件:

@implementation YourClass 
Reachability* reachability; 

@end 

則必須創建新的可達性,並添加觀察者(個體經營)到通知中心:

[[NSNotificationCenter defaultCenter] addObserver:self 
               selector:@selector(showInetConnection) 
                name:kReachabilityChangedNotification 
                object:nil]; 
     reachability = [[Reachability reachabilityForInternetConnection] retain]; 
     [reachability startNotifier]; 

...

-(void)showInetConnection 
{ 
    if ([reachability currentReachabilityStatus]==NotReachable) { 
     UIAlertView* view = [[UIAlertView alloc] initWithTitle:@"Error" 
                 message:@"There are no inet connection" 
                 delegate:nil 
              cancelButtonTitle:@"Ok" 
              otherButtonTitles:nil]; 
     [view show]; 
     [view release]; 
    } 
} 
相關問題