サービスがデバイスに与えるフットプリントを最小限に抑えるために、プログラムでできることは何ですか?多くのシステムメモリを消費しないようにサービスを作成する方法に特別なトリックはありますか?私はメモリの足跡が少ないことが私の主な関心事だと思うので、ユーザーはサービスをオフにしたくないし、いつもそれを稼働させたいと思っている。Androidで実行されているサービスを最適化する方法は何ですか?
***EDIT ***
わかりましたので、私は "メートル私はこの間違っているしなければならないことを考えて答えを読んだ。私は定期的にサービスを覚ますためにAlarmManagerを使用していますが、ユーザーが主なアクティビティを介して指示しない限り、サービスを停止することはありません。サービスが実行された後、onStartCommandの最後にstopServiceを呼び出す必要がありますか?サービス呼び出しを停止しないonDestroy onDestroyで私のAlarmManagerの登録を解除しました。
私の電話機でサービスを実行しているときにサービスが実行されているときに実行される方法ですが、実際に何もしていないのは、AlarmManagerが消えてから小さな機能を実行する時点までです。
常に実行する必要がありますか?必要な場合にのみ、AlarmManagerを使用してブロードキャストを受信してサービスを開始できますか?あなたのサービスは何ですか? – likebobby
「常に稼働している」サービスが必要なケースも少なく、面白くないケースもあります。サービスは@alextscが示すようなタスクであるか、ユーザーがフォアグラウンドのもの(音楽プレーヤーなど)を開始したり停止したりするものです。サービスが「常に稼働している」必要がある明確な技術的理由があることを私たちに納得させることができない限り、私はそれを避けることをお勧めします。 – CommonsWare
これまでのコメントと回答に対処するために私のオリジナルの質問を編集しました。 – ihtkwot