次の方法でユーザーの位置を追跡する必要があるアプリを実装しています。
- アプリがバックグラウンドまたは閉じている間にユーザーの位置を追跡する
- ユーザーの位置が約 2000 メートル変更された場合、API 呼び出しを実行する必要があります。
この問題に対する私のアプローチは次のとおりです。
- ユーザーがアプリを初めて起動すると、現在の場所を使用して地域の監視を開始します
- didExitRegionがトリガーされた場合は、API 呼び出しを実行し、現在の場所を新しいリージョンの中心として使用して、現在監視されているリージョンを新しいリージョンに置き換えます。
これは、ロケーション マネージャーから返される位置が正確であるため、アプリがフォアグラウンドにある場合に正常に機能します。
ただし、アプリがバックグラウンドにある場合、ロケーション マネージャーは初めて実行され、返される最初の座標が正確ではないため、正確な場所を返しません。
問題は、 didExitRegionがバックグラウンドでトリガーされたときにユーザーの正確な位置を取得するにはどうすればよいかということです。
ありがとう