我在 StackOverflow 提了这个问题, 最后是用我自己发现的方式解决的 ~
当 Reachability
状态是 NotReachable
,此时有 2 种情况
然后我发现,用 CF 的函数在 情况 2 能获取到 Wifi 的 SSID, 而 情况 1 获取不到, 由此能区分这 2 种情况
然后用下面的方法跳转到设置页, 引导用户打开开关即可 ~
NSURL *appSettings = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
[[UIApplication sharedApplication] openURL:appSettings];
完整代码 : Stackoverflow : get-apps-using-wlan-cellular-setting
网络开关
,使用无线局域网与蜂窝移动的应用
:D
1
kookpua 2016-10-21 17:58:00 +08:00
我手机上好多新装 app 都不能联网也不提示设置联网那个弹出,在 wifi 和流量入口也都找不到这个 app 这应该是 ios10 的 bug 解决办法:随便在 wifi 还是 4g 里边随便打开或关闭任意一个 app 的开关 然后还原回去即可,这时候打开不能联网的 app 就会自动弹出设置网络的那个弹窗了
|
2
yyfearth 2016-10-21 23:39:40 +08:00 via iPhone
我的 7 没看到这个选项啊
|
3
iShawnWang OP @yyfearth 应该有的吖... “设置”中“无线局域网”和“移动蜂窝网络”都会有一个“使用无线局域网和蜂窝移动网络的应用”选项... 名字好长 ~
|
4
wc0517 2016-10-22 14:08:05 +08:00 via iPhone 1
这个是国行特供功能
|
5
iShawnWang OP @wc0517 是吗... 怪不得搜不到相关的资料... 我问问别人吧...
|
6
wc0517 2016-10-22 16:01:25 +08:00 1
|
7
iShawnWang OP @wc0517 帮了大忙了 ~ 666
|
8
mrlawrence 2016-10-24 10:42:31 +08:00 via iPhone
点艹有关部门十次。
|
9
1315553854 2016-10-24 18:51:23 +08:00 via Android
开启无局域网助理就再也没碰到这个问题了
|
10
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; }; }; ``` |
11
nowit 2017-04-01 11:56:55 +08:00
今天也遇到同类问题,不过在 CocoChina 查到有更好适配方案,可参考一下 http://www.cocoachina.com/ios/20161125/18181.html
|