iPhoneのウェブブラウザ——SafariやGoogleChrome——で、現在地の取得に失敗するエラーが頻繁に起こるようになりました。
このようなエラーですね。
問題なのは、位置情報の取得に関するあらゆる設定をオンにしていても、絶対にエラーが発生する点です。iPhoneの設定アプリから「プライバシー > 位置情報サービス」で該当するアプリをオンにしていてもエラーが発生します。
結論からお話しします。
エラーが発生する原因はiPhone側にはなく、サイト側にあります。なのであなたがエラーを解決する手段はありません。
諦めるしかないのです。
URLが「https://〜」で始まらないサイトはエラーが出る
エラーが出る原因はサイト側にあると言いました。サイトのURLが「https://〜」ではなく「http://〜」から始まるサイトでは、現在地取得ができないような仕様になっているようです。
この「http://〜」という s が付かないURLのサイトは、ブラウザとサーバ間を行き交う情報は暗号化されていないことを意味します。逆に s 付きのURLのサイトは、情報の行き来が暗号化されており、比較的安全だと言えます。
暗号化されていないサイトで現在地情報を取得させるのは危険だという判断なのでしょう。だから取得できないような仕様になっているようです。
iPhoneだけじゃなくAndroidやPCでも同様
この話はiPhoneに限ったことではありません。Android端末やPC用ブラウザでも同様の現象が起きます。
PC版のInternet ExplorerやFirefoxでは位置情報を取得できるようですが、いつ取得できなくなるかわかりません。時代の流れはそういう方向ですから、右に習う感じになるでしょうね。
もっと詳しく知りたい方へ
今回の記事は以下のサイトを参考にしました。概要や結論だけを抜粋しましたので、もっと詳細を知りたい方は以下の記事を参照してみてください。