0
サイズが約200MBのzip
ファイルをダウンロードしようとしています。現在ダウンロードされているバイトを取得するために、私は次のコードスニペットを使用します。Androidダウンロードマネージャー、COLUMN_STATUSは7です。これはどういう意味ですか?
while ((cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)) == DownloadManager.STATUS_PENDING) ||(cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)) == DownloadManager.STATUS_RUNNING)) {
downloadedLength = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR));
}
たび(cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)
あなたが、私はこれを通じて達成したいことは、私が正しく理解していた場合、それは状況SUCCESS
c.getColumnIndex(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FARは、ダウンロードが成功するまで繰り返しますか?0〜100%のダウンロードを監視する必要があるため、c.getColumnIndex(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR)をwhileループ内に配置します。成功したときにステータスがPENDINGまたはRUNNINGになっていて、今までダウンロードしたバイトを取得したい場合 – Mad
はい、c.getColumnIndex(DownloadManager.COLUMN_TOTAL_SIZE_BYTES)は常に実行されますが、値は常に同じです。 –
はい、それは本当ですCOLUMN_TOTAL_SIZE_BYTESは完全なダウンロードサイズを返しますが、私が知る必要があるのはCOLUMN_BYTES_DOWNLOADED_SO_FARです値を提供します。これをループ内で呼び出す必要がありますか?ダウンローを取得するにはこれまで通りのバイト値を – Mad