2016-09-10 3 views
0

Ich muss einige Daten aus einem JSON-Aufruf erstellen und ein Objekt in Android Mobile Dev auffüllen.Android - Aufruf asynctask von asyntask

Der Json erfordert das Lesen der ersten URL, um eine Liste der Daten zu erhalten. Eines der Felder ist eine URL zu einem Bild, das ich mit asyncTask zum zweiten Aufruf des Webs aufrufen muss, um es als Blob abzurufen und im Objekt zu speichern.

Ich habe den Code arbeiten, um den ersten URL-Aufruf mit der asyncTask zu erhalten. Aber während ich jeden Datensatz verarbeite, muss ich den zweiten asyncTask-Aufruf durchführen, um den Image-Blob zu erhalten.

Ist das möglich oder mache ich es falsch? Entschuldigung, keine Code-Schnipsel.

+0

Warum tun Sie nicht "Der Json erfordert das Lesen der ersten URL, um eine Liste der Daten zu erhalten. Eines der Felder ist eine URL zu einem Bild, das ich einen zweiten Aufruf an das Web als Blob abrufen muss und im Obj speichern. " im doinbackground einer einzelnen asynctask. Nach dem Parsen von JSON und dem Abrufen der URL des Images, führen Sie die HTTP-Anforderung aus, um das Image zu erhalten. – takesavy

Antwort

0

Nach meinem Verständnis möchten Sie diese Bilder anzeigen oder downloaden Sie die Bilder in der ersten asyncTask erhalten. Ich würde vorschlagen, dass Sie für beide Zwecke eine Bibliothek wie picaso oder fresco verwenden.

+0

Nein, die erste asyncTask ruft eine Liste von Feldern ab, von denen eines eine URL-Verknüpfung zu einem Image ist. Ich muss einen zweiten Anruf unter Verwendung dieses URL-Links machen, um das Bild als Blob-Daten zu speichern. Dies wird dann in einer dbase für die Offline-Anzeige gespeichert. Die Daten und Bilder sind Wetterbilder und Daten. Daher muss ein asynchroner Aufruf durchgeführt werden, um ein Array von Daten zu erhalten. Dann führen Sie für jedes Element des Arrays einen zweiten Async-Aufruf durch, um die Bilddaten zu erhalten. –

0

Es ist nicht so schwer ist, wie Sie thinking.Follow das folgende Beispiel zu analysieren Bild und Daten von json sind und anzeigen:

http://www.androidbegin.com/tutorial/android-json-parse-images-and-texts-tutorial/

ein separates Paket die ImageLoader.java, MemoryCache.java, FileCache.java erstellen und kopieren Utils.java

Dann können Sie Ihr Bild innerhalb des Adapters mit der Bild-uRL nach:

ImageLoader imageLoader= new ImageLoader(context); 
imageLoader.DisplayImage("the image url", imageview); 

Sie können die Imageloader-Klasse während des gesamten Projekts wiederverwenden.

Abgesehen davon können Sie auch Drittanbieter-API zum Herunterladen von Bildern verwenden.

Einige von ihnen sind Picasso und Glide

Derzeit ich Glide.It bin mit ist sehr leistungsfähig und einfach zu implementieren.

0

Über das Denken. Ich kann 2 HTTP-Anfrage unter derselben Aufgabe machen. Problem gelöst.

Verwandte Themen