iOS8でiBeaconのサンプルコードを書いていたのですが、何故かプライバシー設定のダイアログが表示されず悩んでいたのですが、原因は以下のキーをInfo.plistに追加していなかったからでした。

  • NSLocationWhenInUseUsageDescription
  • NSLocationAlwaysUsageDescription

NSLocationWhenInUseUsageDescriptionはアプリ起動中のみ位置情報の利用を許可する場合のダイアログメッセージを設定するためのキーで、NSLocationAlwaysUsageDescriptionはアプリがバックグラウンドに入っている場合でも利用を許可する場合のダイアログメッセージ設定のキーです。

iOS7ではNSLocationUsergeDescriptionというキーがあり、オプションだったのですが、iOSでは上記のキーが設定されていないとダイアログそのものが表示されなくなっているようです。

IMG_0001