Ich wechsle zu Retrofit und versuche, die richtige Architektur für die Verwendung mit asynchronen Rückrufen zu verstehen.
Zum Beispiel habe ich eine Schnittstelle:
interface RESTService{
@GET("/api/getusername")
void getUserName(@Query("user_id") String userId,
Callback<Response> callback);
}
Und ich führe dies von der Hauptaktivität aus:
RestAdapter restAdapter = new RestAdapter.Builder()
.setServer("WEBSITE_URL")
.build();
RESTService api = restAdapter.create(RESTService.class);
api.getUserName(userId, new Callback<Response> {...});
Dann dreht der Benutzer das Gerät und ich habe eine neu erstellte Aktivität ... Was war hier passiert? Wie kann ich eine Antwort auf die neue Aktivität erhalten (ich gehe davon aus, dass der API-Aufruf im Hintergrund länger ausgeführt wird als das erste Aktivitätsleben). Vielleicht muss ich eine statische Instanz des Rückrufs verwenden oder was? Bitte zeig mir den richtigen Weg ...