iOS10 新添加的网络开关关闭导致 App 没有网络问题

2016-10-21 16:01:08 +08:00
 iShawnWang

如何获取这个 iOS 10 新添加的网络状态的开关状态

我在 StackOverflow 提了这个问题, 最后是用我自己发现的方式解决的 ~


解决方案是

Reachability 状态是 NotReachable ,此时有 2 种情况

  1. 手机没连接 Wifi
  2. iOS 10 网络开关对本 App 是关闭的

然后我发现,用 CF 的函数在 情况 2 能获取到 Wifi 的 SSID, 而 情况 1 获取不到, 由此能区分这 2 种情况
然后用下面的方法跳转到设置页, 引导用户打开开关即可 ~

NSURL *appSettings = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
    [[UIApplication sharedApplication] openURL:appSettings];

完整代码 : Stackoverflow : get-apps-using-wlan-cellular-setting

然后看到 App Store 的用户评论发现一个问题

:D

10053 次点击
所在节点    iOS
11 条回复
kookpua
2016-10-21 17:58:00 +08:00
我手机上好多新装 app 都不能联网也不提示设置联网那个弹出,在 wifi 和流量入口也都找不到这个 app 这应该是 ios10 的 bug 解决办法:随便在 wifi 还是 4g 里边随便打开或关闭任意一个 app 的开关 然后还原回去即可,这时候打开不能联网的 app 就会自动弹出设置网络的那个弹窗了
yyfearth
2016-10-21 23:39:40 +08:00
我的 7 没看到这个选项啊
iShawnWang
2016-10-22 11:07:04 +08:00
@yyfearth 应该有的吖... “设置”中“无线局域网”和“移动蜂窝网络”都会有一个“使用无线局域网和蜂窝移动网络的应用”选项... 名字好长 ~
wc0517
2016-10-22 14:08:05 +08:00
这个是国行特供功能
iShawnWang
2016-10-22 14:22:06 +08:00
@wc0517 是吗... 怪不得搜不到相关的资料... 我问问别人吧...
wc0517
2016-10-22 16:01:25 +08:00
iShawnWang
2016-10-22 17:32:11 +08:00
@wc0517 帮了大忙了 ~ 666
mrlawrence
2016-10-24 10:42:31 +08:00
点艹有关部门十次。
1315553854
2016-10-24 18:51:23 +08:00
开启无局域网助理就再也没碰到这个问题了
grayon
2016-10-25 17:48:55 +08:00
https://www.sdk.cn/news/4148
```
CTCellularData *cellularData = [[CTCellularData alloc]init];
cellularData.cellularDataRestrictionDidUpdateNotifier = ^(CTCellularDataRestrictedState state){
//获取联网状态
switch (state) {
case kCTCellularDataRestricted:
NSLog(@"受限");
break;
case kCTCellularDataNotRestricted:
NSLog(@"不受限");
break;
case kCTCellularDataRestrictedStateUnknown:
NSLog(@"未知");
break;
default:
break;
};
};
```
nowit
2017-04-01 11:56:55 +08:00
今天也遇到同类问题,不过在 CocoChina 查到有更好适配方案,可参考一下 http://www.cocoachina.com/ios/20161125/18181.html

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/314451

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX