Core Location

Last-modified: 2012-08-14 (火) 23:19:46

Over View

デバイスがの位置情報を操作するフレームワーク
see@https://developer.apple.com/library/mac/#documentation/CoreLocation/Reference/CoreLocation_Framework/_index.html#//apple_ref/doc/uid/TP40007123

Sample Code

  1. 現在位置を測定し、通知

基本操作

  1. CoreLocationクラスのインポート
  2. プロトコルへの準拠
    • <CLLocationManagerDelegate>
  3. CLLocationManagerのインスタンス
    • CLLocationManager *locationManager;
    • [[locationManager alloc] init];
  4. CLLocationManagerの振る舞いを決定
    CLLocationManagerに所定のメッセージを送信し,プロパティを設定
    • distanceFilter
    • desiredAccuracy
  5. 測定の開始メッセージを送信
    • startUpdatingLocation
  6. CLLocationManagerからの測定値を受信(デリゲートの設定)
    • [locationManager setDelegate:self]; // CLLocationManagerのインスタンスを生成した自分をデリゲートにする
    • locationManager:didUpdateToLocation:fromLocation:メソッドの実装 // 測定値を受信するためのプロトコルメソッド
    • locationManager:didFailWithError:メソッドの実装 // エラーを受信するためのプロトコルメソッド
  7. deallocメソッドを実装
    • [locationManager setDelegate:nil]; // デリゲートを解除
    • [locationManager release]; // CLLocationManagerのインスタンスを解放