私はアプリケーションで新たに実装された位置処理を行い、フォアグラウンドとバックグラウンドで満足のいく結果をテストします。アプリケーションは、重要な場所の変更だけでなく、いくつかの地域を監視しています。アプリが一時停止または終了したときに同じ結果が得られるかどうかはまだ分かりません。 私が理解しているように、これらの状態からアプリが起動すると、launchOptionsLocationキー以外のアプリケーションがlaunchOptions Dictionaryのparamに見つかるようになります。私の質問は、私は、アプリケーションの代理人が正常に進んで、すべてがうまくいると仮定することができますか?すべてのビュー設定コードをインターセプトする必要がありますか?didFinishLaunchingWithOptionsを最小化するlaunchOptionsLocationキーディスカバリでの処理は?
私のdidFinishLaunchingWithOptionsで非常に最初の行:launchOptions方法は次のとおりです。
NSManagedObjectContext *context = [self managedObjectContext];
if (!context) {
//Handle Error
}
self.sharedLocationHandler = [[[TTLocationHandler alloc] init] autorelease];
self.siteLogger = [[[ProjectSiteLogger alloc] initWithOptions:nil] autorelease];
self.siteLogger.locationHandler = self.sharedLocationHandler;
self.siteLogger.managedObjectContext = context;
すべての可能性では、これは私が場所のイベントに対応するために必要なものをすべてカバーしています。私はlaunchOptions内の位置キーを簡単にテストし、メソッドの残りの部分をスキップすることができますが、予期せぬ複雑さがどのような複雑さを伴うのか分かりません。 また、ユーザーが、ビューがまったく設定されていない不完全な状態にあったときに意図的にアプリを起動した場合に、何が起こるかという質問もあります。
これは試したことですか、それはまったく必要なのでしょうか?アプリケーションが中断されたときにXcodeデバッガに接続しておく方法がわからないため、これをテストする方法はわかりません。
---追加の更新情報----周りのテストの携帯電話を運ぶの日に
初期のテストでは、私の場所の処理は、私がappDelegateを変更することなくそれを望んでいたすべてのタスクを行うように見えました。だから、私は、サスペンド/タームからの復帰が起きて、ビューコントローラが見えなくなったにもかかわらず完全なappDelegateプロシージャを実行したと推測します。 スタートアッププロシージャを変更する必要はないようですが、appDelegateプロシージャを短くして処理を最小限に抑えることを賢明にするパフォーマンスやバッテリの懸念が依然としてありますか?