AirLocate

iOS Dev Library にあるサンプルを読んでいきますー・ω・
iBeaconに関するサンプル

AirLocate: Using CoreLocation to monitor, range, and configure your device as an iBeacon

ファイル

  • APLUUIDViewController.h / APLUUIDViewController.m

  • APLMonitoringViewController.h / APLMonitoringViewController.m

  • APLRangingViewController.h / APLRangingViewController.m
    観測領域内のビーコンを検出する CLBeaconRegionを生成

  • APLCalibrationBeginViewController.h / APLCalibrationBeginViewController.m

  • APLCalibrationValculator.h / APLCalibrationValculator.m

  • APLCalibrationEndViewCntroller.h / APLCalibrationEndViewCntroller.m

  • APLConfigurationViewController.h / APLConfigurationViewController.m

  • APLDefaults.h / APLDefaults.m
    共通データを記載しているシングルトン

  • APLProgressTableViewCell.h / APLProgressTableViewCell.m
    テーブルビュー用セル

  • APLAppDelegate.h / APLAppDelegate.m
    アプリケーションデリゲート。
    CLLocationManagerクラスを生成。
    CLLocationManagerDelegateデリゲートを持つ。

クラス

  • CLLocationManager
    位置情報クラス。GPS・電子コンパス等。
    • startMonitoringForRegion:
      領域観測イベントが発生した時のイベントのハンドリングを開始
    • startRangingBeaconsInRegion:
      Beacon領域への出入りのイベントのハンドリングを開始
  • CLBeaconRegion

デリゲート

  • CLLocationManagerDelegate
    位置情報に関するデリゲートクラス。
    • - (void)locationManager:(CLLocationManager )manager didDetermineState:(CLRegionState)state forRegion:(CLRegion )region
      iBeacon監視状態を知らせてくれるメソッド。CLLocationManager requestStateForRegion:で追加すると呼ばれる
    • - (void)locationManager:(CLLocationManager )manager didRangeBeacons:(NSArray )beacons inRegion:(CLBeaconRegion *)region