AsyncTask in extra Klasse

Schrubber

Bekanntes Mitglied
Hey,

ich habe aktuell folgendes Problem bzw. die folgende Problemstellung:

Ich arbeite aktuell an einer Android-App, welche aus einer Activity besteht welche unterschiedliche Fragmente anzeigt. Nun war die Funktion bisher wie folgt:

Meine Activity ruft per AsyncTask XML-Daten ab, verarbeitet sie und schickt sie weiter an das Fragment welches diese nun anzeigt.

Nun muss das geändert werden, geplant ist folgender Aufbau:
Activity ruft Fragment auf, Fragment ruft eine Klasse auf welche die Beschaffung der Daten sowie die Verarbeitung übernimmt.

Nun komme ich aber an meine Grenze bzw. an die Grenze meines Verständnisses.

Ich rufe in meiner Activity das Fragment auf, in dem Fragment rufe ich in meiner neuen Klasse "Funktionssammlung" (lediglich Beispiel) die Methode "public String getMannschaftsliste()" auf. Diese soll einen String zurückgeben welcher im Fragment dann benutzt werden kann. Nun das Problem: Ich rufe innerhalb der Methode folgendes auf:
Java:
myAsyncTask.delegate = this;
myAsyncTask.execute(url);

Der Return ist ein String, welcher normal in
Java:
public void processFinish(String output) {
    //Hier wird der String verarbeitet
}
zurückgegeben wird.

Nun brauche ich genau diesen Return aber innerhalb der Methode, am besten als return von dem .execute();....

Wie ):

Bin über Denkanstöße und Hilfestellungen sehr dankbar!


Liebe Grüße,
Schrubber
 
Hallo.

Du verwendest den falschen Ansatz.
Dafür gibt es in Android "Service" Implementierungen.

Du rufst ein Service aus, der macht was und sendet dann das Ergebnis.
Wie das zum Beispiel aussehen kann siehst du hier oder noch besser hier.

Grüße
 

Zurück
Oben