sto usando la libreria Picasso per scaricare le immagini da URL. Questo è il mio primo tentativo su PicassoDownload delle immagini multiple da Picasso in Android
Scenario: Voglio scaricare alcune immagini dal server e memorizzarle in un file. So come archiviare in file e recuperare. Quando ho eseguito il codice qui sotto, capisco che sto ricevendo solo l'ultima immagine. Sembra che Picasso funzioni parallelamente. L'ho verificato visualizzando un messaggio di brindisi. Esiste comunque la soluzione a questo problema?
Problema: sto ricevendo solo l'ultima immagine URL.
Ecco il mio codice
static int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
for (int i = 0; i < url.length; i++)
{
// url is String array which has 2 urls.
++count; // Incrementing the count by 1
Picasso.with(this).load(url[i])
.into(new Target() {
@Override
public void onPrepareLoad(Drawable arg0) {
// TODO Auto-generated method stub
}
@Override
public void onBitmapLoaded(Bitmap arg0, LoadedFrom arg1) {
// TODO Auto-generated method stub
arg0 = Bitmap.createScaledBitmap(arg0, 150, 150, true);
filePath = saveFile(arg0); // I'm just calling this function to check how many times `onBitmapLoaded` is called. And it is called only once...!!
}
@Override
public void onBitmapFailed(Drawable arg0) {
// TODO Auto-generated method stub
}
});
}
}
public String saveFile (Bitmap bm)
{
Toast.makeText(getApplicationContext(), ""+count, 100).show(); // Displaying the value of count, which always display as **2**.
return "";
}
Sì, mostrano sempre contare 2 becz quando la vostra prima immagine bitmap caricata al conteggio del tempo ha raggiunto il valore 2 in iterazione. –
Hai assolutamente ragione. Grazie @Haresh. Quindi posso salvare molte immagini in file con questo codice? – Aniruddha
ho pubblicato ans ora è possibile controllare e più chiaro su di esso. –