如何在iPhone中检查互联网状态
我想检查是否使用SystemConfiguration或CFNetwork连接了internet我不太确定是哪一个 然后我想知道,如果互联网已经连接,那么它是否通过wifi连接 我尝试了一个使用以下代码的示例 -(IBAction) shownetworkStatus { NSString *str = @"http://www.google.com"; NSURL *url = [NSURL URLWithString:str]; NSURLRequest *req = [NSURLRequest requestWithURL:url]; if (req!=NULL) { lbl.text = @"Connected"; } else { lbl.text = @"notConnected"; } } -(iAction)显示网络状态 { NSString*str=@”http://www.google.com"; NSURL*url=[NSURL URLWithString:str]; NSURLRequest*req=[nsurlRequestRequestWithURL:url]; 如果(请求!=NULL){ lbl.text=@“已连接”; } 否则{ lbl.text=@“未连接”; } } 有人说,根据苹果的说法,这是无效的,你必须使用系统配置框架,请告诉我需要做什么 另外,我个人认为我在上面代码中所做的是不恰当的,好像有一天谷歌也可能因为维护或其他因素而宕机 另外,如果你能给我提供一个链接,让我可以显示WIFI网络的名称,那就太酷了 我在互联网上搜索了一下,然后得到了这些可达性。h代码,这也是一个保镖,因为我想学习这些概念,而不是复制粘贴它们如何在iPhone中检查互联网状态,iphone,objective-c,xcode,Iphone,Objective C,Xcode,我想检查是否使用SystemConfiguration或CFNetwork连接了internet我不太确定是哪一个 然后我想知道,如果互联网已经连接,那么它是否通过wifi连接 我尝试了一个使用以下代码的示例 -(IBAction) shownetworkStatus { NSString *str = @"http://www.google.com"; NSURL *url = [NSURL URLWithString:str]; NSURLRequest *req
感谢并问候您可以使用Apple提供的可达性代码。这是示例代码。您可以找到有关internet连接的全部详细信息。这是一个链接,您可以使用Apple提供的可达性代码。这是示例代码。您可以找到有关internet连接的全部详细信息。这是在Raxit提到的基础上构建的链接,我使用以下代码(摘自Raxit提到的可达性示例)检查我的应用程序委托中的internet访问:
- (BOOL)isReachableWithoutRequiringConnection:(SCNetworkReachabilityFlags)flags
{
BOOL isReachable = flags & kSCNetworkReachabilityFlagsReachable;
BOOL noConnectionRequired = !(flags & kSCNetworkReachabilityFlagsConnectionRequired);
if ((flags & kSCNetworkReachabilityFlagsIsWWAN)) {
noConnectionRequired = YES;
}
return (isReachable && noConnectionRequired) ? YES : NO;
}
- (BOOL)isHostReachable:(NSString *)host
{
if (!host || ![host length]) {
return NO;
}
SCNetworkReachabilityFlags flags;
SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithName(NULL, [host UTF8String]);
BOOL gotFlags = SCNetworkReachabilityGetFlags(reachability, &flags);
CFRelease(reachability);
if (!gotFlags) {
return NO;
}
return [self isReachableWithoutRequiringConnection:flags];
}
- (BOOL)connectedToNetwork {
return [self isHostReachable:@"www.hostyoureallycareabouthavingaconnectionwith.com"];
}
在Raxit提到的基础上,我使用以下代码(摘自Raxit提到的可达性示例)检查我的应用程序委托中的internet访问:
- (BOOL)isReachableWithoutRequiringConnection:(SCNetworkReachabilityFlags)flags
{
BOOL isReachable = flags & kSCNetworkReachabilityFlagsReachable;
BOOL noConnectionRequired = !(flags & kSCNetworkReachabilityFlagsConnectionRequired);
if ((flags & kSCNetworkReachabilityFlagsIsWWAN)) {
noConnectionRequired = YES;
}
return (isReachable && noConnectionRequired) ? YES : NO;
}
- (BOOL)isHostReachable:(NSString *)host
{
if (!host || ![host length]) {
return NO;
}
SCNetworkReachabilityFlags flags;
SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithName(NULL, [host UTF8String]);
BOOL gotFlags = SCNetworkReachabilityGetFlags(reachability, &flags);
CFRelease(reachability);
if (!gotFlags) {
return NO;
}
return [self isReachableWithoutRequiringConnection:flags];
}
- (BOOL)connectedToNetwork {
return [self isHostReachable:@"www.hostyoureallycareabouthavingaconnectionwith.com"];
}
如何获取wifi名称你能帮我了解一下吗?我认为你应该通过这条线索,如何获取wifi名称你能帮我了解一下吗?我认为你应该通过这条线索