0

我们正在尝试在没有连接时显示警报视图,并且我们正在使用来自苹果的可达性 2.2 类。我们遇到的问题是,在程序开始时,我们总是会收到一个警报视图,即没有互联网连接,但我们已连接到互联网。是否有正确的方法来检查这些课程的互联网连接?

4

2 回答 2

0

我记得读过 Apple 代码示例中的可达性代码对于进行网络检查不是很好。推荐的方法是检查设备是否可以看到您的网站(或网页),如果没有则给出错误。

我搜索了我在哪里读到这篇文章,但找不到原文。这是使用该方法的不同链接:

http://www.iphonedevx.com/?p=657

于 2010-07-28T15:53:14.670 回答
0

可达性需要一些时间来完成它的任务。所以要有耐心。使用通知获取结果。

这就是我所做的:

BOOL hasInet;
可达性 *connectionMonitor = [可达性可达性ForInternetConnection];
[[NSNotificationCenter 默认中心]
    添加观察者:自我
    选择器:@selector(inetAvailabilityChanged:)
    名称:kReachabilityChangedNotification
    对象:连接监视器];

hasInet = [connectionMonitor currentReachabilityStatus] != NotReachable;

接着

-(void)inetAvailabilityChanged:(NSNotification *)notice {
    可达性*r = (可达性*)[通知对象];
    hasInet = [r currentReachabilityStatus] != NotReachable;
}

这对我很有效。

于 2010-09-26T06:42:55.100 回答