社員ブログ
HOME  社員ブログ
ホーム > iOS, 社員:ピーター > 【iOS7】「”アプリ名”は現在の位置情報を利用します。よろしいですか?」が、すぐ消える

【iOS7】「”アプリ名”は現在の位置情報を利用します。よろしいですか?」が、すぐ消える

2014年07月16日 21時34分52秒

こんにちは、ピーターです。

iOSで現在地を取得するのにこんなコードを書きました。

CLLocationManager *locationManager = [[CLLocationManager alloc] init];
[locationManager startUpdatingLocation];

すると、位置情報を利用してもよいかを確認するダイアログが表示されるのですが、なぜかすぐに消えてしまいます。

Screenshot 2014.07.16 21.09.39


原因は変数locationManagerの寿命でした。
locationManagerはローカル変数なのでメソッドを抜けたタイミングで解放されます。
位置情報の取得は止めるまで繰り返し行われるため、変数が存続している必要がありました。
プロパティやインスタンス変数にすることで解決しました。

iOS, 社員:ピーター

  1. コメントはまだありません