1

我正在尝试通过以下代码获取网络状态

//define in my .h file
NetworkStatus internetConnectionStatus;

//define in my .m file
self.internetConnectionStatus = [[Reachability reachabilityForInternetConnection]currentReachabilityStatus];

我越来越self.internetconnection status = <null>。我在这里做错了什么?

4

1 回答 1

5

您应该将它的值与以下定义的枚举值进行比较Reachability.h

if(self.internetConnectionStatus == NotReachable)
{
    // no connection
} else if(self.internetConnectionStatus == ReachableViaWiFi)
{
    // WiFi connection
} else if(self.internetConnectionStatus == ReachableViaWWAN)
{
    // 3G connection
}

@property (nonatomic, assign)此外,如果您self.用于获取/设置它,请确保您的 NetworkStatus 在您的标题中有一个for it。

不过,在我看来,假设您使用的是 Apple Reachability 示例,它并没有特别完善,并且在某些情况下可能会给出错误的值。要获得更强大的版本,请使用ASIHTTPRequest库附带的版本或它所基于的版本,可在此处下载并在博客文章中详细介绍。

于 2011-06-08T02:22:32.043 回答