iOS能否自动扫描周边wifi信息并通过密码连接
Posted Dast1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS能否自动扫描周边wifi信息并通过密码连接相关的知识,希望对你有一定的参考价值。
能否获取系统wifi列表信息
不能,只能获取用户当前连接的wifi信息
https://developer.apple.com/documentation/systemconfiguration/1614126-cncopycurrentnetworkinfo
能否自动扫描周边特定wifi名并通过密码连接
ios11+ 系统才可以。
通过代码设置wifi名字和前缀(密码可根据wifi是否有密码选不同方法)连接, 测试发现连接所需时间一般在5s以上,并且在wifi远离等信号较弱时,可能会失败(unknown/internal error/无法加入网络)。
代码可以触发检测一次,如果检测到同名wifi并且密码一致,系统会自动弹窗供用户选择是否加入。
是否自动循环检测?
不会,但是可以根据回调结果,自定义定时器重新检测。
连接后有效期
可设置是否单次有效(下次进入app会重新检测)和有效天数。
单次有效相关:
When joinOnce is set to true, the hotspot remains configured and connected only as long as the app that configured it is running in the foreground. The hotspot is disconnected and its configuration is removed when any of the following events occurs:
The app stays in the background for more than 15 seconds.
The device sleeps.
The app crashes, quits, or is uninstalled.
The app connects the device to a different Wi-Fi network.
The user connects the device to a different Wi-Fi network.
To disconnect the device from a hotspot configured with joinOnce set to true, call removeConfiguration(forSSID:).
手机的 wifi 连接中断后(比如wifi设备关闭/远离),当wifi设备打开/靠近,app再次尝试连接时,是否会再次弹窗请求用户允许加入
会再次弹窗请求,每次重连 wifi 都必须执行相关代码,且手机系统会自动再次弹窗。此特性与是否开启“单次有效”参数无关。
代码示例
iPhone怎么查看是不是连接过的wifi?
一、首先从iPhone 7或7 Plus主界面依次进入「设置」-「无线局域网」设置。二、进入无线局域网设置后,首先开启“无线局域网”开关,然后在下面搜索到的无线网络中,点击连接需要的WiFi名称进行连接,然后输入正确的WiFi密码,完成后点击右上角的“加入”进行连接。
三、如果不出意外的话,iPhone 7与7 Plus就能成功连接WiFi无线网络了。成功连接WiFi后,在手机顶部左上角可以看到一个Wifi图标,最后我们再去打开浏览器,测试下,能否正常上网了。
四、Wifi成功连接并可以正常使用后,以后连接WiFi就不用密码了,用户可以直接在底部快捷菜单中,快速选择开启与关闭。 参考技术A 首先打开iPhone手机桌面上的“设置”,在设置界面点击“无线局域网”,在弹出来的界面中找到已连接的WiFi,然后点击WiFi后面的“感叹号”可以查看WiFi的详情信息,弹出的界面就是已连接WiFi的信息。 参考技术B iPhone手机没有这样的功能,是不可以查询过往连接过的WiFi的。因为他不存在这样的记忆功能,所以也就无法查询过往的连接。 参考技术C IPhone,如果想查看是否连接过此网络,可以打开iPhone的WIFI,然后站在这个WIFI的有效范围内,然后如果自动连接的就是连接词网络 参考技术D 不能断开后重新连接,想解决问题,有二种方法,一种是无线网络连接的高级属性里,找到这个WIFI,去更改连接方式与密码,保存后再连。二是直接删除此WIFI(在高级属性里去删除),重新搜索找到后连接,输入新密码,这样的话,协议以及密码都会被更新。不同操作系统进去的方式不一样。
以上是关于iOS能否自动扫描周边wifi信息并通过密码连接的主要内容,如果未能解决你的问题,请参考以下文章