わかりました、これは私の最初の投稿です、
ローカル db テーブルから取り込まれた ListView があります。そこから、Web サービスから利用可能な新しいデータがあるかどうかを確認する必要があります。そうであれば、最初にその特定のテーブルを更新してから UI を更新する必要があります。
今、これを実装する方法について大まかなアイデアが必要ですか?
Web サービスからのデータは頻繁には変更されません。そのため、データが常に最初にデータベースからロードされるアーキテクチャ/メカニズムを作成する必要があります。次に、新しいデータが Web サービスから利用可能である場合は、サービス更新テーブルを解析してから UI を更新します。
基本的に私はこのようなものが欲しい
MainThread
|
|
|-------->>--------separate thread----->>-----|
| |
| listener/ query db,
populate UI <<----------- observer/ ------<<----get data
| something |
| |
| |
| |
| check if we have new data--->> if no-- DONE
| |
| if yes
| |
| call web service,
| fetch data,
| update table
| listener/ |
update UI <<-------------observer/-----<<--------|
| something
|
TumblrのAndroidアプリのようなもの..
今私は、AsyncTask をクラスとインターフェイス (オブザーバー/リスナーとして) 内にラップすることでこれを達成できると思います
しかし、ローダー(アンドロイドで利用可能)を使用するのが好きです。
他の提案はありますか?