2

開始されたサービスの主なセールス ポイントは、大量のデータをダウンロードするなどのアプリケーション自体よりも長生きできることだと思います。

新しいスレッドと比較してバインドされたサービスはどうですか? バインドされたサービスは、アプリケーションが私の理解で実行されている限り、完全にアンバインドされるまで存続します。たとえば、Bluetooth 接続やデータ転送を処理するために、代わりに新しいスレッドを開始しないのはなぜですか?

私の質問の背後にある動機は、BluetoothHDP サンプルのコードを読んでいて、そこでバインドされたサービスを使用すると混乱することです。

4

1 に答える 1

1

UI 固有ではなく、UI に依存しない何かをしたいときに使用したいサービス。メインスレッドが親になるため、UI でのスレッドの開始は引き続き UI に依存します。デバイスをローテーションすると、すべてのスレッドが破棄されますが、サービスは引き続き実行できます。それはあなたがサービスを持っているBluetoothのyです。音声録音についても同様です。

于 2013-08-09T03:46:12.110 に答える