CoreLocation を使用してユーザーの位置を特定し、距離を計算して地図上にルートを表示しています。バッテリーの使用量を最小限に抑えるために、位置情報を取得した後に GPS をオフにし、1 分後に再びオンにしています。アプリケーションがアクティブな場合、すべて正常に動作しますが、バックグラウンドに送信して GPS をオフにした後、アプリはまったく非アクティブであるように見え、何も出力しません (を使用NSLog()
)。info.plist
アプリケーションをバックグラウンドで実行できるように、ファイルにディレクティブを追加しました。バックグラウンドで GPS をオフにしないと、アプリはフォアグラウンドでも動作します。
私の質問は次のとおりです。アプリケーションが中断されないようにするために、バックグラウンドで GPS を常にオンにする必要がありますか、または別の回避策がありますか (GPS をオンにするとバッテリーが消耗するため)。
PS 私は iOS とモバイル開発にまったく慣れていないので、知っておくべきヒントがいくつかあるかもしれません。