如何以编程方式显示访客Wi-Fi“条款和条件”确认对话框?

时间:2018-12-03 22:08:43

标签: ios wifi

这是在酒吧/餐厅/机场中的典型设置,那里可以使用无密码的Wi-Fi,但需要接受条款和条件。

第一次客户手动连接到Wi-Fi网络,该网络会显示确认对话框,然后接受。结果,互联网连接仍然有效,在这里没有问题。
但是,下一次客户访问同一地点时,iOS设备会自动连接到已知的Wi-Fi,并在状态栏中显示活动的Wi-Fi连接图标。但是只有在客户再次接受条款和条件后,互联网连接才可用。为此,客户必须转到iOS设置或打开Safari,Safari会自动显示确认对话框。

我们的应用程序专为酒吧而设计。基于上述iOS行为,普通客户会在iPhone状态栏中看到它具有Wi-Fi连接,但是我们的应用显示“没有互联网连接”。结合起来,这是非常令人困惑的UX。

问题:是否有与Safari一样的编程方式来带来Wi-Fi确认对话框?

1 个答案:

答案 0 :(得分:1)

如果您的强制门户配置正确,iOS应该自动执行此操作。

当它连接到WiFi网络时,iOS会检查http://captive.apple.com是否返回“成功”。如果这样做,则假定它具有Internet访问权限。如果返回任何其他内容,则假定存在强制门户,它将打开强制门户身份验证屏幕。

此行为与用户以前是否已连接到该热点无关。

可能存在问题的地方是,热点在一段时间之后取消对用户的身份验证,因为iOS成功连接后不会连续重试http://captive.apple.com

您的应用可以定期检查http://captive.apple.com是否返回正确的响应,如果没有返回SFSafariViewController