У меня есть приложение, которое показывает прогресс загрузки в индикаторе выполнения.Скачать Прогресс в Android
while ((chunkBytes = httpInputStream.read(outputByte, 0, 1024)) != -1) {
bytesRead = bytesRead + chunkBytes;
// write contents to the file
fileOutputStream.write(outputByte, 0, (int) chunkBytes);
// publish the progress of downloading..
publishProgress((int)((bytesRead)*100/fileSize));
}
Но то, что я пытаюсь сделать, это - вместо этого 58/100 .. (? Вторичный прогресса) хотел бы, чтобы отобразить 3,5 Мб/5,5 Мб .... (MBS скачивания/Total MB) ниже этого прогресса .. Я попытался изменить вторичный прогресс, но не помог .. Есть ли другой способ?
Переменные 'bytesRead' и' fileSize' содержат значение no. прочитанных байтов и итоговых нет. байтов для чтения, правильно? Поэтому просто разделите их каждый на 1048576, чтобы преобразовать эти числа в мегабайты! Его справедливые юниты! –
Проблема будет с показом этих «мб». Я не думаю, что есть простой способ сделать это. Может быть, через отражение? Или, может быть, будет проще реализовать собственный ProgressDialog. – Sver
Нет, я не беспокоюсь о преобразовании этих МБ в байты .. (а не об устройстве), все это прекрасно работает. Когда вы загружаете приложения из Google Play Store, вторичный прогресс показывает это. (Первичный прогресс отображается - процент .. чуть ниже, это показывает, что это то, что я ищу. –