私は現在、車の運転者のログブック用の GPS 追跡アプリ (距離のみ、各値を保存したり、MapView に表示したりしない) に取り組んでいます。スマホがドックされているせいか、消費電力は気にならない。これまでの私の実装は、経度/緯度を取得する GPS ヘルパー クラスを呼び出すアクティビティです。アクティビティ自体が走行距離を計算し、それをユーザーに表示して、距離も表示する通知バーを開始します。アクティビティをアクティブに保ち、OS によって強制終了されないようにするために、アクティビティに PARTIAL WakeLock を使用しています。
私の問題は、これが正しく機能していないことです。これは、WakeLock にもかかわらず、アプリが OS によって強制終了されたように見えるためです。通知バーの項目をクリックすると (たとえば 15 ~ 30 分後)、ランニング アクティビティの走行距離を確認すると、アクティビティが新しい GPS トラックを開始するように表示されて、それが殺されていると思います。以前に開始したトラックからの走行距離を表示する代わりに。WAKELOCK Permission がマニフェストで正しく設定されている。
私の質問は、この構造体が機能するかどうか、またはこれを行うためのより良い方法があるかどうかを知ることです?