iOSアプリ開発です。
アプリからSSIDとパスワードを知っているWiFiスポットに自動接続する機能を実装しようと思っているのですが、接続する前に存在を確認してから接続をトライしたいと思っています。その実現方法はないでしょうか?
ちなみに接続は下記のコード(概略)で成功してます。
let hotspotConfig = NEHotspotConfiguration(ssid: ssid, passphrase: password, isWEP: false)
NEHotspotConfigurationManager.shared.apply(hotspotConfig)
電波を出して見えているWiFiのリストの取得は、NEHotspotHelperできるような気もしてますが、
一度アプリをバックグラウンドにしてWiFi設定でなにかしないと結果が返ってこないなど、人手を返さないと行けない感じで今回の要件にはそぐわないと考えています。
※NEHotspotHelperの利用にはAppleへの申請が必要であり、かつ望みなさそうなので試してませんが。
見えているWiFiリストがとれずとも、SSIDを指定して、該当するWiFiが電波を吹いているかいないかが分かれば良いのでMacOSのscanForNetworksWithSSID(withSSID ssid: Data?)のようなAPIがあれば事足ります。
その他、電波を出しているときといないときで結果が変わるAPIがあればそれで判別できるかと思っています。
すみませんが該当する情報にたどり着けなかったので、ご存知の方がいればご教授いただけると助かります。
[環境]
xcode 9.3
iOS 11.3
iPhone
あなたの回答
tips
プレビュー