iOS wifi认证

wifi认证存在的问题:在设备连接上wifi,没有通过路由器认证前,如果关闭自动弹出的Portal页面,wifi会自动断开。 解决方案:可通过以下两个方法来禁止系统自动弹Portal页面来解决wifi自动关闭的问题。

1、正常情况,用户使用iPhone手机连接带有Portal认证的路由器,在连接成功后,iOS系统会在已有列表中随机选择连接指定的网址(例如:www.itools.info)以测试当前路由器是否需要Portal认证。在需要Portal认证的网络,系统会弹出Portal页面,这个时候,如果用关掉portal页面,或者直接切换到其它应用,wifi网络会直接自动断开,我们的解决办法是路由器白名单,让路由器放行所有Portal测试的IP,以下为测试的域名:

www.appleiphonecell.com    
captive.apple.com  
www.itools.info   
www.ibook.info   
www.airport.us  
www.thinkdifferent.us  

对应的IP地址:

23.207.103.91    
23.33.54.18   
23.44.167.91   
23.67.183.91  
96.7.103.91  
23.42.71.91  
23.34.105.211  
23.59.167.91  
23.42.184.50  
23.47.232.190  
23.77.23.91  
23.194.87.91  
23.61.91.190  
23.218.12.50  
23.2.38.95   
23.46.135.91  
172.225.213.179  
218.205.66.94  
23.64.251.249  
23.58.250.189  

将以上所有IP加到路由器的白名单中,即可解决iPhone断开wifi的问题,但是同时也不自动弹出Portal页面了,用户打开浏览器才会重定向到Portal页面。

2、 wifi名确定解决方法
如果公司部署的公共wifi名确定的情况,就比较简单了,不需要配置上述白名单也可以保证wifi不断开,具体办法是,在程序启动时,向iOS系统注册SSID,方法如下:

- (void)registerNetwork:(NSString *)ssid{  
    NSString *values[] = {ssid};  
    CFArrayRef arrayRef = CFArrayCreate(kCFAllocatorDefault,(voidvoid *)values, (CFIndex)1, &kCFTypeArrayCallBacks);  
    if( CNSetSupportedSSIDs(arrayRef)) {  
        NSArray *ifs = (__bridge_transfer id)CNCopySupportedInterfaces();  
        CNMarkPortalOnline((__bridge CFStringRef)(ifs[0]));  
        NSLog(@"%@", ifs);  
    }
}  

参考资料:iOS WIFI 信息 获取

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASIHTTPRequest对CFNetwork API进行了封装,并且使用起来非常简单,用Objective-C编写,可以很好的应用在Mac OS X系统和iOS平台的应用程序中。ASIHTTPRequest适用于基本的HTTP请求,和基于REST的服务之间的交互。 ASIHTTPRequest功能很强大,主要特色如下: l 通过简单的接口,即可完成向服务端提交数据和从服务端获取数据的工作 l 下载的数据,可存储到内存中或直接存储到磁盘中 l 能上传本地文件到服务端 l 可以方便的访问和操作请求和返回的Http头信息 l 可以获取到上传或下载的进度信息,为应用程序提供更好的体验 l 支持上传或下载队列,并且可获取队列的进度信息 l 支持基本、摘要和NTLM身份认证,在同一会话中授权凭证会自动维持,并且可以存储在Keychain(Mac和iOS操作系统的密码管理系统)中 l 支持Cookie l 当应用(iOS 4+)在后台运行时,请求可以继续运行 l 支持GZIP压缩数据 l 内置的ASIDownloadCache类,可以缓存请求返回的数据,这样即使没有网络也可以返回已经缓存的数据结果 l ASIWebPageRequest –可以下载完整的网页,包括包含的网页、样式表、脚本等资源文件,并显示在UIWebView /WebView中。任意大小的页面都可以无限期缓存,这样即使没有网络也可以离线浏览 l 支持客户端证书 l 支持通过代理发起Http请求 l 支持带宽限制。在iOS平台,可以根据当前网络情况来自动决定是否限制带宽,例如当使用WWAN(GPRS/Edge/3G)网络时限制,而当使用WIFI时不做任何限制 l 支持断点续传 l 支持同步和异步请求

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值