整个强制网络和CNSet支持的SSID如何工作



我阅读了文档,它说:

通过调用 CNSetSupportedSSID 函数,应用程序可以向强制网络支持注册无线网络 SSID 列表,从而承担向这些网络进行身份验证的责任。通常,当用户加入强制网络时,强制网络支持会提供一个 Web 工作表,允许用户向网络进行身份验证。但是,如果应用程序已注册强制网络的 SSID,则会禁止显示 Web 工作表,并且用户可以在相应的应用程序中完成身份验证

"用户可以在适当的应用程序中完成身份验证"到底是什么意思?

  • 用户是否应该启动此应用进行身份验证?如果是这样,是否会以某种方式通知用户他/她应该这样做?
  • iOS 是否会启动此应用,以便用户可以进行身份验证?
  • 应用会收到一些回调吗?

我特别感兴趣的是,如果一个应用程序已注册处理捕获网络,而另一个应用程序正在尝试访问 Web,而用户尚未进行身份验证。

看起来公共 API 并没有为你做太多事情。它会抑制消息,但用户应手动启动另一个应用程序才能登录。

但是,有一个特殊的授权"com.apple.developer.CaptiveNetworkPlugin",它使您可以在CaptiveNetwork框架中使用一堆私有API来构建真正的强制插件。一些公司与苹果合作来做到这一点(https://devforums.apple.com/message/792112#792112)。但是,它不是一个广泛可用的 API。

顺便说一句。以下是对其中一个应用程序进行逆向工程的人的一些其他信息:http://kalapun.com/posts/reverse-engineering-ios-app/

相关内容

  • 没有找到相关文章

最新更新