0

私はCLLocationマネージャーと協力しています。

startUpdatingLocation現在地の緯度と経度を取得するメソッドを実装しました。

アプリケーションがフォアグラウンドで実行されている場合は現在地の緯度と経度を取得しましたが、アプリケーションがバックグラウンドで実行されている場合は機能しません。

アプリケーションがバックグラウンドで実行されている場合、現在の場所の緯度と経度を取得する方法を教えてください。

4

2 に答える 2

1

私はこのリンクからstackoverflowで答えを見つけました:-

iOS アプリケーションで n 分ごとにバックグラウンドで位置情報を更新するにはどうすればよいですか?

Apple Developer Forums の助けを借りて、これを実装するソリューションを見つけました。私は次のことをしました:

  • ロケーションのバックグラウンド モードを指定する
  • を使用NSTimerしてバックグラウンドでUIApplication:beginBackgroundTaskWithExpirationHandler:
  • nが小さい場合はUIApplication:backgroundTimeRemaining問題なく動作しますが、 が大きい場合nは、バックグラウンド タスクが強制終了されるのを避けるために、時間がなくなる前にロケーション マネージャーを再度有効 (および無効) にする必要があります。location は許可されている 3 つのタイプのバックグラウンド実行の 1 つであるため、これは機能します。

:動作しないシミュレーターでこれをテストすることで、しばらく時間がかかりましたが、私の電話では正常に動作します。

于 2012-12-07T10:00:07.297 に答える
0

Get current Location in backround plist で場所の背景モードを指定します。

于 2012-12-07T10:01:25.753 に答える