Bila kita ingin men-download rangkaian gambar secara asynchronous, kita bisa memodifikasi class 'DownloadImageTask' dari latihan sebelumnya seperti berikut:
private class DownloadImageTask extends AsyncTask{
/*mengambil daftar URL gambar*/
protected Long doInBackground(String...urls) {
long imagesCount = 0;
for (int i = 0; i < urls.length; i++) {
/*download gambar*/
Bitmap imageDownloaded = DownloadImage(urls[i]);
if (imageDownloaded != null) {
/*increment perulangan gambar*/
imagesCount++;
try {
/*insert delay 3 detik*/
Thread.sleep(3000);
}
catch (InterruptedException e) {
e.printStackTrace();
}
/*mengembalikan/menghasilkan gambar yang di-download*/
publishProgress(imageDownloaded);
}
}
/*mengembalikan nilai total gambar yang di-download*/
return imagesCount;
}
/*menampilkan gambar yang di-download*/
protected void onProgressUpdate(Bitmap... bitmap) {
img.setImageBitmap(bitmap[0]);
}
/*menampilkan gambar yang di-download*/
protected void onPostExecute(Long imagesDownloaded) {
Toast.makeText(getBaseContext(), "Total " + imagesDownloaded + " images downloaded",
Toast.LENGTH_LONG).show();
}
}