0

アプリでコアロケーションを使用しています。必要に応じて緯度/経度を取得しますが、そのページから「戻る」と ( [self disconnectModalViewControllerAnimated:YES]; )、アプリがクラッシュします。

エラーは発生しませんが、更新場所を適切に終了していないと想定できますか??

何か助けはありますか?

ありがとう

4

1 に答える 1

0

あなたの質問はかなり漠然としていますが、あなたが参照しているページは CLLocationManager のデリゲートだと思います。ページの割り当てが解除され、ロケーション マネージャーがデリゲートを失い、ロケーション マネージャーがデリゲートにアクセスしようとすると、アプリケーションがクラッシュします。

ロケーションマネージャーを適切にクリーンアップする必要があります。

-dealloc で、ページ (おそらく UIViewController) で次のように設定します (これはほんの始まりにすぎません)。

- (void) dealloc {
    //todo: stop updating/release the location manager too
    [self.locationManager setDelegate:nil];

    //there should be a lot more code here

    [super dealloc];
}

ただし、特にオブジェクトとロケーション マネージャーを適切に管理する必要があります。Apple のDelegates and Data Sourcesドキュメントと Apple のMemory Management guideを読む必要があります。

于 2012-09-11T11:02:26.277 に答える