Objective c ios检测到无线可达性中的错误更改示例

Objective c ios检测到无线可达性中的错误更改示例,objective-c,ios,network-programming,ios6,reachability,Objective C,Ios,Network Programming,Ios6,Reachability,我的应用程序使用Wifi网络,我使用可达性示例代码来检测Wifi网络 当应用程序连接到任何正常的Wifi接入点时,应用程序运行良好,但当应用程序连接到临时网络时,我的应用程序检测到错误的网络更改 当应用程序连接到ad-hoc网络时,一段时间后(大约每15到20分钟一次),当前可达性状态变为不可达几秒钟,然后再次恢复到可达状态(仅供参考,类似的安卓应用程序在同一ad-hoc网络上工作正常) 调试信息 可达性标志状态:——------- 1或2秒后,Wifi恢复正常状态 可达性标志状态:-R----

我的应用程序使用Wifi网络,我使用可达性示例代码来检测Wifi网络

当应用程序连接到任何正常的Wifi接入点时,应用程序运行良好,但当应用程序连接到临时网络时,我的应用程序检测到错误的网络更改

当应用程序连接到ad-hoc网络时,一段时间后(大约每15到20分钟一次),当前可达性状态变为不可达几秒钟,然后再次恢复到可达状态(仅供参考,类似的安卓应用程序在同一ad-hoc网络上工作正常)

调试信息

可达性标志状态:——-------

1或2秒后,Wifi恢复正常状态

可达性标志状态:-R------d

代码

    - (NetworkStatus) currentReachabilityStatus{
        NSAssert(reachabilityRef != NULL, @"currentNetworkStatus called with NULL reachabilityRef");
        NetworkStatus retVal = NotReachable;
        SCNetworkReachabilityFlags flags;
        if (SCNetworkReachabilityGetFlags(reachabilityRef, &flags))
        {
            if(localWiFiRef)
            {
                retVal = [self localWiFiStatusForFlags: flags];
            }
            else
            {
                retVal = [self networkStatusForFlags: flags];
            }
        }
        if(NotReachable == retVal){
            printf("\nNetwork not reachable.");
        }
        return retVal;
    }

所以你肯定结果是错误的,因为你尝试了另一个具有不同结果的平台-再想想。嘿,我的应用程序也面临同样的问题。。。你有什么解决办法吗??