6

Intents または direct binding を使用してサービスと通信できることがわかりました。直接バインディングが役立つのはなぜですか? そして、コンポーネントとの高い結合のように聞こえるのは悪い習慣ではありませんか?

4

1 に答える 1

3

通常、インテントを使用して context.StartService() で開始されるサービスは、単一の操作を実行し、呼び出し元に結果を返しません。このサービスは無期限に実行でき、サービスは stopSelf() を呼び出して停止する必要があります。

境界付きサービスは、コンポーネントがサービスと対話して要求を送信し、結果を取得し、プロセス間通信 (IPC) を使用してプロセス全体でそれを行うことを可能にするクライアント サーバー インターフェイスを提供します。1 つ以上のコンポーネントをこのサービスにバインドできます。このサービスは実行されます。少なくともコンポーネントがそれにバインドされるまでのみ、それ以外の場合は破棄 (停止) されます。

制限付きサービスと制限なしサービスについて詳しく知りたい。以下のリンクを参照してください

制限付きサービスと制限なしサービス

于 2013-09-08T08:22:09.757 に答える