私のアプリの機能は、waneloのようなものをモデルにすることができます。
ユーザーは、1 つのアクティビティで購入したいものの検索用語を入力します。その検索語に一致するアイテムのリストが表示されます。したがって、ListView
will にはItem
s が含まれます。にItem
は多くの属性があり、主なものは次のとおりです。
id
-Item
データベース内の の ID に対応date_modified
Item
-が更新されたかどうかを知るためのタイムスタンプremote_directory
Item
-アイコンやその他の画像などの のアセットのベース ディレクトリへの URL 。URL は次のようにフォーマットさhttp://my.domain.com/items/a1bc234d/
れます。a1bc234d
はランダムに生成され、 によってシードされdate_modified
ます。remote_dir_name
- の部分文字列remote_directory
。上記の例から、この値は になりますa1bc234d
。
検索結果のリストから、後で表示する項目をマークできます。これにより、いくつかのことがトリガーされます。
- まず、ユーザーが「ダウンロード」した s を表す
Item
別の に を広告したいと思います。ListView
Item
Item
次に、 のすべてのデータ (説明、すべてのアセット)を実際にダウンロードしたいと思いますremote_directory
。これらは、アプリの内部ストレージのフォルダーに保存されますremote_dir_name
:/data/data/my.app.package.name/files/a1bc234d/
.
これらの「ダウンロードされた」アイテムは、オフライン モードで表示できるようになっています。
この「ダウンロードListView
済み」は別のアクティビティに対応し、Item
. また、これListView
は編集可能である必要があります。リスト内の を削除して並べ替えることができる必要がありItem
ます。
最後に、「ダウンロード済み」ListView
は永続的である必要があります。秩序を維持する必要があります。ListView
検索結果のは持続する必要はありません。
ダウンロードされる のリストを保存する方法を理解するのに苦労しItem
ています。"ダウンロード"ListView
は、リスト アイテムがダウンロードされている場合、その進行状況バーをいつ更新するかを知る必要があります。Item
ダウンロードが完了するまで行の列を常に更新するため、 をデータベースに保存するのは少しやり過ぎだと思います。これら 2 つの 間でこのダウンロード ステータス情報を渡すにはどうすればよいListView
ですか?