Ich habe das Ding getroffen, als Sie und ich habe versucht, den Autor des Buches Retrofit zu fragen : Ich liebe es, mit APIs auf Android zu arbeiten (hier ist der Link ) (nein! Ich mache keine Werbung für sie ... aber sie sind wirklich nett Jungs :) Und der Autor antwortete mir sehr bald mit der Log-Methode für Retrofit 1.9 und Retrofit 2.0-Beta.
Und hier ist der Code von Retrofit 2.0-Beta:
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
// set your desired log level
logging.setLevel(Level.BODY);
OkHttpClient httpClient = new OkHttpClient();
// add your other interceptors …
// add logging as last interceptor
httpClient.interceptors().add(logging); // <-- this is the important line!
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient)
.build();
So fügen Sie mithilfe von HttpLoggingInterceptor eine Protokollierungsmethode hinzu . Auch wenn Sie der Leser dieses Buches sind, das ich oben erwähnt habe, werden Sie möglicherweise feststellen, dass es mit Retrofit 2.0 keine Protokollmethode mehr gibt - was, wie ich den Autor gefragt hatte, nicht korrekt ist und sie das Buch im nächsten Jahr im Gespräch aktualisieren werden darüber.
// Falls Sie mit der Log-Methode in Retrofit nicht so vertraut sind, möchte ich etwas mehr mitteilen.
Beachten Sie auch, dass Sie einige Protokollierungsstufen auswählen können. Ich benutze den Level.BODY die meiste Zeit, was ungefähr so etwas ergibt:
Sie können fast alle http-Mitarbeiter im Bild finden: den Header, den Inhalt und die Antwort usw.
Und manchmal brauchen Sie wirklich nicht alle Gäste, um an Ihrer Party teilzunehmen: Ich möchte nur wissen, ob die Verbindung erfolgreich hergestellt wurde und ob der Internetanruf in meinem Activiy & Fragmetn erfolgreich getätigt wurde. Dann können Sie Level.BASIC verwenden , das ungefähr Folgendes zurückgibt :
Können Sie den Statuscode 200 OK darin finden? Das ist es :)
Es gibt auch eine andere, Level.HEADERS , die nur den Header des Netzwerks zurückgibt . Ya natürlich noch ein Bild hier:
Das ist der ganze Logging-Trick;)
Und ich möchte Sie mit dem Tutorial teilen , die ich viel gelernt dort . Sie haben eine Menge großartiger Posts, die über fast alles im Zusammenhang mit Retrofit sprechen, und sie aktualisieren den Post weiter, während Retrofit 2.0 kommt. Bitte werfen Sie einen Blick auf diese Arbeiten, von denen ich denke, dass Sie viel Zeit sparen werden.