![]() 前回の動作確認では、App Store 提供の iOS 汎用クライアントでは位置情報の取得が可能であるにもかかわらず、最新版の Xcode によるオリジナルビルドでは位置情報の取得ができないというところまでを確認しました(画面1~3)。 では、この原因はいったいどこにあるのでしょうか? 原因は、iOS の位置情報にまつわるセキュリティの仕様変更にあります。 iOS 10 + Xcode 8までは、位置情報の利用は「常に許可」または「許可しない」からの二者択一だったのですが、iOS 11 + Xcode 9以降は「このアプリの使用中のみ許可」という選択肢が必須オプションとなったため、従来の記述方式ではこのダイアログが正常に表示されなくなりました(画面4)。 そのため、App Store 提供の汎用クライアントでは画面5~6のように位置情報の設定オプションが iPhone の設定項目として表示されているにもかかわらず、オリジナルビルドでは画面7のように設定項目が非表示となってしまっています。 では、これに対処するにはどうしたらよいでしょうか。 |