質問: 添付画像にあるように、カフェなどにあるwifiスポット圏内に入った時に表示される認証画面についてなのですが、これはどういう仕組みで表示されるのでしょうか? アクセスポイントからbeaconなどの何らかの信号を受け取ってアクションしていると思うのですが、どのタイミングでその通知に対するハンドラーが端末にセットされているのでしょうか? 下記、参考になるかもしれないのでCaptiveNetworkクラスのURLを貼っておきます。 ![画像の説明をここに入力](https://i.stack.imgur.com/jgYrB.jpg)
回答: このようなログインが必要なWi-fiスポットは、ログインしていない状態で適当なウェブサイト(例えば`apple.com`とか)にアクセスすると、そのリクエストを傍受して強制的にログイン画面にリダイレクトさせるような設定になっています。 この挙動を利用してiOSはアクセスポイントに接続したときに、Appleのサーバーにテスト用のHTTPリクエストを送ることで、ログインが必要なWi-fiスポットかどうかを自動的に判断しています。 つまり、Appleのサーバーのデータが期待通りに返ってきた場合は認証が不要と判断して何もしませんが、リダイレクトによって違うデータが返ってきた場合はログイン画面と判断してそのページをポップアップするようになっています。 参考: