So verwenden Sie AsyncTask

AsyncTask-Frage

Ich habe einige Tutorials befolgt, aber es ist mir immer noch nicht klar. Hier ist der Code, den ich derzeit mit einigen Fragen unter dem Code habe. MainActivity ruft SomeClassWithHTTPNeeds auf, das dann den JSONParser (AsyncTask <>) aufruft.

Hauptaktivität:

String station = SomeClassWithHTTPNeeds.getInstance().getStation(123);

SomeClassWithHTTPNeeds:

getStation {

JSONParser = new JSONParser();
JSONObject station = parser.getJSONFromUrl("https://api....");
return JSONObject.getString("station");
}

JSONParser (AsyncTask <String, Void, String>)

protected String doInBackground(); ==> Seperate thread
protected void onPostExecute(); ==> On GUI thread

Ich dachte: --- Setze die HTTPRequest in doInBackground ();

Problem ist, ich bin nicht sicher, wie man: JSONParser veranlasst, das JSONObject an die Methode getStation zurückzugeben?

Was ich wissen muss

=> Wo soll ich das JSONObject zurückgeben: im Hintergrund oder ausführen?

=> Wie verwende ich den JSONParser, sobald er eine AsyncTask ist? Wird die execute () - Funktion den Wert zurückgeben?

=> AsyncTask <String, Void, String> ==> Wie funktioniert das? Es ist der Rückgabetyp?

Danke vielmals!

Antworten auf die Frage(4)

Ihre Antwort auf die Frage