0

常にバックグラウンドで実行でき、電話で実行されているアプリで処理できるイベントを発生できる Android 用のサービスを設計したいと考えています (OnFling イベントは任意のアプリでリッスンできます)。Androidでこれをどのように実現できますか?

http://www.mikeimer.com/?p=671http://android.kgmoney.net/2010/05/08/creating-a-simple-android-service-for-background-processingを読みました/

誰かがこれについて私を案内できますか?

4

1 に答える 1

1

「常にバックグラウンドで実行できる」サービスを持つことはできません。ユーザーはいつでもあなたのサービスを削除できますし、そうするでしょう。Android 自体も、アルゴリズムが決定したときにいつでもあなたのサービスを削除できますし、削除するでしょう。startForeground()Android がサービスを削除するのを遅らせるようなものを使用することはできますが、それは永久に実行されるわけではなく、ユーザーは設定アプリまたは任意の数のサードパーティのタスク マネージャーを介して自由に軌道からあなたを核攻撃することができます。

さらに、大多数のアプリにとって、永久に実行しようとするサービスを持つことは劣った設計です。ユーザーがそのようなサービスをやめてしまうのには理由があります。現在、ユーザーがより重視しているアプリに充てることができる RAM を消費してしまうからです。不十分に作成されたサービスは、保証されているよりも多くの CPU、バッテリー、帯域幅などを消費することもあります。何を達成しようとしているのかを実際に説明することを拒否したため、ユーザーがあなたのサービスが正当であると考えるかどうか、または「永続的なサービス」を回避する代替の実装を提案するかどうかはわかりません.

サービスは確かにIntents、他のアプリが選択した場合に受信できるブロードキャストを送信できます。それがあなたの要求に合っているかどうか (「私は XYZ イベントを起動し、どのアプリもこのイベントをリッスンして何らかのタスクを実行できます」)、私には言えません。

于 2012-07-26T10:53:48.500 に答える