私は Android の初心者ですが、残念ながら、これまでサービスの問題に対する満足のいく答えを見つけることができませんでした。あなたが私を助けてくれることを願っています。私の質問は一般的なタスクに対処していると思います。
私の状況は次のとおりです。私は、GPS 位置を記録してリストに保存するだけの独自のサービスを実装しました。サービスが停止すると、データがデータベースに書き込まれます。
これはうまく機能しますが、サービスには、記録を停止して後で再開できる何らかの「一時停止モード」が必要です。この機能を実装する最良の方法は何ですか?
これまでのところ、2 つの (確かにあまり満足のいくものではありませんが) アイデアを思いつきました。
独自のサービス ライフサイクル (開始、停止、一時停止、再開) を実装し、GUI をサービスにバインドします。さらに、バインドは非同期で行われるようで、GUI の更新 (開始/停止コントロールの有効化と無効化) が少し面倒です。
一時停止すると、サービスが停止し、GPS の場所がシングルトン クラスのリストに追加されます。再開すると、サービスが再び開始されます。ここで見られる問題は、一時停止モード中にアプリケーションが強制終了され、データが失われる可能性があることです。