iBeacon端末に近づくとLocal Notificationを飛ばすアプリを開発しております。

iOS8から位置情報取得の設定が3種類となり、

  • Never
  • WhenInUse
  • Always

バックグラウンドでのiBeaconの観測については、Alwaysを使用するという認識でしたが
クライアントから「可能であればWhenInUseで」という要望があり調べていたところ、
こちらのサイトでWhenInUseでもビーコンのレンジングは可能という表記がありました。

didRangeBeaconsがコールされて、
ビーコン端末のメジャー,マイナーさえ取得できれば処理は可能なのですが、
WhenInUseを指定すると、アプリ起動時/バックグラウンド時かまわずdidRangeBeaconが呼ばれません。

WhenInUse許可時のiBeaconのレンジングはどのように取得するかご存知のかたいらっしゃいますでしょうか。