Android でのデータベース クエリ (初心者) のサービスの最適な使用法を理解しようとしています。このサービスは、アクティビティからデータベースにクエリを実行するために使用されるデータベースへの (インターネット経由の) 接続を有効にする必要があります。
私の理解では、これは Bound Service を使用して実現できます。つまり、複数のクライアントをサービスにバインドし、それぞれがサービスのメソッドにアクセスできます。ただし、この状況でService
クラスまたはそのサブクラスを拡張するかどうかはわかりません。IntentService
理想的には、サービスはサービスの開始時に、たとえばそのonCreate
メソッドで一度データベースに接続し、サービスのメソッドで切断する必要がありますonDestroy
。サービスには、この接続を使用してデータベースにクエリを実行するさまざまなメソッドがあります。
では、クラスを拡張してデータベース接続のためにService
新しいスレッドを開始することと、クラスを拡張して接続を開始すること(つまり、独自のワーカー スレッドを開始すること)に違いはありますか?onCreate
IntentService
onCreate
IntentService
にバインドすると、IntentService
すべてのアクティビティがアンバインドされるまで生き続けますか?
これが最善の方法ですか?
ありがとう