質問する
2730 次
2 に答える
3
特定のホストの到達可能性を確認したい場合は、次のコードを使用できます。
Reachability *reach = [Reachability reachabilityWithHostName:@"www.apple.com"];
ここで、サーバー名をホスト名として渡して、到達可能性を確認できます。それはうまくいくはずです。詳細については、アップルのドキュメントを確認してください。
表示されるエラー メッセージについてはSystemConfiguration.framework
、プロジェクトに追加してみてください。それでも問題が解決しない場合は、アーキテクチャ armv7 の未定義シンボル: "_SCNetworkReachabilityCreateWithAddress" を確認してください。
于 2012-12-25T02:41:09.443 に答える
0
didFinishLaunchingWithOptions メソッドに次のように入力します。
self.internetReach= [Reachability reachabilityWithHostName:@"your host name e.g.www.apple.com"];
[internetReach startNotifier];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reachabilityChanged:) name:kReachabilityChangedNotification object:nil];
[self performSelector:@selector(reachabilityChanged:) withObject:[NSNotification notificationWithName:kReachabilityChangedNotification object:internetReach]];
これは以下のメソッドを呼び出します
- (void)reachabilityChanged:(NSNotification*)note
{
Reachability* curReach = [note object];
NSParameterAssert([curReach isKindOfClass: [Reachability class]]);
if(curReach == self.internetReach)
{
NetworkStatus netStatus = [curReach currentReachabilityStatus];
switch (netStatus)
{
case ReachableViaWiFi:
{
isInternetConnectionAvilable=YES;
if(isNetworkNotifierCalledOnce)
{
UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"Message!" message:@"Internet Available Now" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
}
break;
}
case NotReachable:
{
isInternetConnectionAvilable=NO;
UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"Message!" message:@"No Internet Connectivity" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
break;
}
}
}
isNetworkNotifierCalledOnce=YES;
}
于 2012-12-25T07:24:23.093 に答える