SignificantChange API を使用して、システムによって閉じられた (またはクラッシュした) アプリを起動できると思います。ただし、実際に必要なものに近い可能性があるため、地域の監視を検討する必要があります。
リンクは次のとおりです
。
および関連するセクション:
更新が発生したときにアプリが中断された場合、システムは更新を処理するためにバックグラウンドでアプリを起動します。アプリがこのサービスを開始して終了した場合、新しい場所が利用可能になると、システムはアプリを自動的に再起動します。このサービスは iOS 4 以降で利用でき、セルラー無線を搭載したデバイスでのみ利用できます。
CLLocationManager をセットアップするときは、呼び出すだけです
- (void)startMonitoringSignificantLocationChanges
デリゲート コールバックとして一般的な方法でイベントを処理します。
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
アプリが終了した場合は、アプリのデリゲートへのコールバックも取得することに注意してくださいメソッドの起動が完了しました。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
また、この場合のコールバックには、場所の更新の結果として起動されたことを通知するフラグが含まれていると確信しています。