私はいくつかのエンティティ(すべて同じタイプ)に関する情報を表示するListViewを持っています。すべてのエンティティは状態を持ち、ListItemの見た目が異なることがあります。さらに、ListItemをクリックすると、エンティティの状態に応じて特定の操作が実行されます。Androidサービス:サービスが開始されるまでUIで開始されたイベント/タスクをキューに入れますか?
状態Aにあるエンティティは、それを使用して何らかの操作を行うサービスに渡す必要があります。
サービスは、必要なときにのみ開始する必要があります。したがって、ユーザーがListItemをクリックすると、サービスが開始され、エンティティがそれに渡されます。その後、サービスは何らかの操作を行い、エンティティの状態が変化します。これにより、エンティティが属するListItemの外観が変更されます。
- シンプル場合:サービスがすでに開始してのListItemの ユーザーがクリックするエンティティを渡すservicemethodが 直接呼び出すことができますときにバインドされています。
- 難しい場合:サービスが開始されておらず、ユーザーが ListItemをクリックしています。
第2のケースを処理する最良の方法は何ですか?エンティティをキューに保存し、サービスが開始されるのを待ってキューを渡すか、よりエレガントな方法がありますか? サービスが開始される前にユーザーが複数のListItemをクリックしている可能性があります。
これを避けるために、サービスを常にバックグラウンドで実行しておくことをお勧めしますか?次に、サービスのバインディングが十分速いので、ユーザーがListItemをクリックした場合、そのサービスへの参照がすでにバインドされているかどうかが問題です。
ありがとうございます!