Modernizacja 2.0 :
AKTUALIZACJA: @ by Marcus Pöhls
Logowanie się Retrofit 2
Retrofit 2 całkowicie opiera się na OkHttp dla dowolnej operacji w sieci. Ponieważ OkHttp jest zależnością równorzędną Retrofit 2, nie musisz dodawać dodatkowej zależności po wydaniu Retrofit 2 jako stabilnej wersji.
OkHttp 2.6.0 jest dostarczany z przechwytywaczem logów jako wewnętrzną zależnością i możesz go bezpośrednio użyć dla swojego klienta Retrofit. Retrofit 2.0.0-beta2 nadal używa OkHttp 2.5.0. Przyszłe wydania podbiją zależność do wyższych wersji OkHttp. Dlatego musisz ręcznie zaimportować przechwytywacz rejestrowania. Dodaj następujący wiersz do importu gradle w pliku build.gradle, aby pobrać zależność przechwytywacza rejestrowania.
compile 'com.squareup.okhttp3:logging-interceptor:3.9.0'
Możesz również odwiedzić stronę Square GitHub dotyczącą tego przechwytywacza
Dodaj rejestrowanie do modernizacji 2
Podczas tworzenia aplikacji i do celów debugowania dobrze jest mieć zintegrowaną funkcję dziennika, która wyświetla informacje o żądaniach i odpowiedziach. Ponieważ rejestrowanie nie jest już domyślnie zintegrowane w Retrofit 2, musimy dodać przechwytywacz rejestrowania dla OkHttp. Na szczęście OkHttp jest już dostarczany z tym przechwytywaczem i musisz go tylko aktywować dla swojego OkHttpClient.
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
// set your desired log level
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
// add your other interceptors …
// add logging as last interceptor
httpClient.addInterceptor(logging); // <-- this is the important line!
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient.build())
.build();
Zalecamy dodanie rejestrowania jako ostatniego przechwytywacza, ponieważ będzie to również rejestrować informacje, które dodałeś do poprzedniego przechwytywania do żądania.
Log Levels
Rejestrowanie zbyt dużej ilości informacji spowoduje wysadzenie monitora Android, dlatego przechwytywacz logowania OkHttp ma cztery poziomy logowania: BRAK, PODSTAWOWY, NAGŁÓWKI, CIAŁO. Przeprowadzimy Cię przez każdy z poziomów dziennika i opiszemy ich wyniki.
Więcej informacji: Retrofit 2 - Log Requests and Responses
STARA ODPOWIEDŹ:
brak logowania Retrofit 2 już. Zespół programistów usunął funkcję rejestrowania. Szczerze mówiąc, funkcja rejestrowania i tak nie była tak niezawodna. Jake Wharton wyraźnie stwierdził, że zarejestrowane wiadomości lub obiekty są wartościami założonymi i nie można ich udowodnić, że są prawdziwe. Faktyczne żądanie, które dociera do serwera, może mieć zmienioną treść żądania lub coś innego.
Mimo że domyślnie nie ma zintegrowanego rejestrowania, można wykorzystać dowolny rejestrator Java i używać go w dostosowanym przechwytywaczu OkHttp.
Więcej informacji na temat Retrofit 2 można znaleźć w:
Retrofit - Getting Started and Create an Android Client
FULL
ma to dać ciało, ale wydaje się, że tak nie jest.