设备是否连接到WIFI?

时间:2010-11-04 19:07:35

标签: iphone wifi symbols reachability system-configuration

我需要知道设备是否通过WIFI连接。这应该很简单,但我在示例代码apple supply HERE上打破了我的脖子。我似乎无法让它在我自己的应用程序中工作。这不是我唯一需要做的事情吗?

IN H:

#import <UIKit/UIKit.h>    
#import <Foundation/Foundation.h>
#import <SystemConfiguration/SystemConfiguration.h>

    @class Reachability;

    @interface FirstViewController : UITableViewController <UITableViewDelegate, UITableViewDataSource> {

        Reachability* wifiReach;
    }

IN M: 我只是尝试在viewDidLoad中调用以下代码:

wifiReach = [[Reachability reachabilityForLocalWiFi] retain];

但是编译结果:

警告:未找到“+ reachabilityForLocalWiFi”方法

错误:“_ OBJC_CLASS _ $ _ Reachability”,引自:FirstViewController.o中的objc-class-ref-to-Reachability - 未找到符号

看到这个,我可能在这里做了一些非常错误的事情。认为这将是一项简单的任务。该死的好主意。

2 个答案:

答案 0 :(得分:4)

#import "Reachability.h"

- (BOOL)networkCheck{
    Reachability *curReach = [[Reachability reachabilityForInternetConnection] retain];
    NetworkStatus netStatus = [curReach currentReachabilityStatus];
    [curReach release];
    switch (netStatus)
    {
        case NotReachable:
        {
            NSLog(@"NETWORKCHECK: Not Connected");
            return false;
            break;
        }
        case ReachableViaWWAN:
        {
            NSLog(@"NETWORKCHECK: Connected Via WWAN");
            return false;
            break;
        }
        case ReachableViaWiFi:
        {
            NSLog(@"NETWORKCHECK: Connected Via WiFi");
            return true;
            break;
        } 
    }
    return false;
}

如果连接到wifi,则[self networkCheck]将返回true。我也使用了可访问性代码,这在我的所有应用程序中都能很好地工作。

答案 1 :(得分:2)

你有:

#import "Reachability.h"
你的.m文件中的