0

ダウンロードするファイルがたくさんあります(可能であれば同時に)。そこで、N個のBroadcastReceiversを登録しACTION_DOWNLOAD_COMPLETE、N個の要求をキューに入れます。

さて、DownloadManagerによってブロードキャストされたインテントを受信するまで、すべてが予想よりもうまくいっています。はい、すべての受信者がこのインテントを受け取ります。

うーん。特定のダウンロードID(DownloadManager.enqueue返される)の行をフェッチし、このレシーバーにリンクされたURLを持つファイルのステータスがであるかどうかを確認し、STATUS_SUCCESSFUL必要なことを実行してからレシーバーの登録を解除できます。

しかし...あなたが知っている、それはこれを行うための最良の方法ではありません。

インテントからURLまたはその他の情報を判別する方法はありますか、それともDownloadManagerは何かが行われたときにのみ通知しますか?または、複数のダウンロードを同時に処理するにはどうすればよいですか?

4

1 に答える 1

0

インテントにはextra_download_id、キューに入れられた要求の1つのIDと等しいフィールドがあります。

Download_Completeインテントをトリガーしたファイルを特定する方法

于 2012-05-31T16:41:59.190 に答える