ファイルをダウンロードしてオフラインで見ることができるiPadアプリを作っています。バックグラウンドスレッドで複数のファイルをダウンロード
私はすでにビューの部分を持っており、ドキュメントディレクトリにファイルをダウンロードできます。 これで、移動を続けるためにダウンロードが完了するのを待つ必要があります。 これはスレッドに入れることで解決できますが、ユーザーが複数のファイルをダウンロードしたり、同じファイルを何度もダウンロードしたりするとどうなりますか?
私の考えは、進捗状況を見るためのダウンロードキューを作ることです。
ワークフロー:
ユーザーがドキュメントを押し、ダウンロードを開き、ユーザーは、ダウンロードが開始されたというメッセージを取得し、オフラインドキュメントビューで表示することができます。
ユーザーはさらに3つのドキュメントをダウンロードします。
ユーザーがオフラインドキュメントビューに移動すると、ユーザーは4つの塗りつぶしたセルでテーブルビューを表示します。 2つのドキュメントがロードされ、2つのドキュメントがまだダウンロードされています。これは、テーブルビューのセルにダウンロード/ステータスバーが表示されているためです。
ダウンロードしたドキュメントは表示または削除できます。
進行中のダウンロードは(まだ)視聴できませんが、キャンセルできます。
ダウンロードするURLを追加できるスレッドダウンロードクラスを作成します。クラスには、ドキュメントのダウンロードをキャンセルして削除するメソッドがありますが、進行状況を返すメソッドもあります。 可能であれば、クラスは同時にダウンロードを処理できます。
問題は、どこから始めたらいいのですか?
Grand Central Dispatchを見てください。これは、バックグラウンド処理を行うより簡単で、より良い/よりクリーンな方法です。また、キューイングも無料で提供されます。 – cellcortex
それはとても面白そうですね!私はCGDに関するいくつかの研究を行い、私の考えに合っています。 – Justin