kSCNetworkReachabilityFlagsIsWWAN 如何为真而 kSCNetworkReachabilityFlagsReachable 为假

Posted

技术标签:

【中文标题】kSCNetworkReachabilityFlagsIsWWAN 如何为真而 kSCNetworkReachabilityFlagsReachable 为假【英文标题】:How can kSCNetworkReachabilityFlagsIsWWAN be true and kSCNetworkReachabilityFlagsReachable be false 【发布时间】:2017-06-09 12:35:11 【问题描述】:

ios 可达性中,同步检查 SCNetworkReachabilityFlags 并获取以下标志组合:

kSCNetworkReachabilityFlagsReachable: 0 kSCNetworkReachabilityFlagsIsWWAN: 1

根据 Apple 的文档(以及其他库中的可达性实现,例如 AFNetworking),kSCNetworkReachabilityFlagsIsWWAN 表明它可以通过蜂窝网络使用,但是当这是真的时,整体 kSCNetworkReachabilityFlagsReachable 也应该是真的。

这似乎仅在您从 Wifi 切换到移动时才会发生。 (当您在 Mobile 上启动时,它会正确生成两个标志为 true)。

任何想法如何产生这种情况(10.3.2 中的新功能?),还是我对标志含义的理解有误?

【问题讨论】:

【参考方案1】:

我遇到了类似的问题,问题是用户禁用了相关应用的移动数据

【讨论】:

虽然我们也发现 AFNetworking 并不总是正确地触发事件——(从 AFNetworking 切换到可达性状态让我们解决了问题)

以上是关于kSCNetworkReachabilityFlagsIsWWAN 如何为真而 kSCNetworkReachabilityFlagsReachable 为假的主要内容,如果未能解决你的问题,请参考以下文章