2016-08-12 3 views
0

Модернизация не печатает журнал. Уровень журнала установлен в подробный. Пробовал HttpLoggingInterceptor тоже.Android Retrofit log не показывает

с использованием этих gradles

compile 'com.squareup.retrofit2:retrofit:2.0.2' 
compile 'com.squareup.retrofit2:converter-gson:2.0.2' 
compile 'com.squareup.okhttp3:okhttp:3.2.0' 
compile 'com.squareup.okhttp3:logging-interceptor:3.3.1' 

Код

OkHttpClient httpClient = new OkHttpClient(); 
HttpLoggingInterceptor httpLoggingInterceptor = new HttpLoggingInterceptor(); 
httpLoggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY); 
httpClient.newBuilder().connectTimeout(6, TimeUnit.MINUTES) 
       .readTimeout(6, TimeUnit.MINUTES) 
       .writeTimeout(6, TimeUnit.MINUTES) 
       .addInterceptor(new Interceptor() { 
        @Override 
        public Response intercept(Chain chain) throws IOException { 
         Request original = chain.request(); 
         Request.Builder requestBuilder = original.newBuilder() 
           .header("Content-Type", "application/json") 
           .header("Authorization", "[email protected]#JG_a34-n3d") 
           .method(original.method(), original.body()); 
         Request request = requestBuilder.build(); 
         return chain.proceed(request); 
        } 
       }) 
    .addInterceptor(httpLoggingInterceptor); 


return httpClient; 
+1

U добавлен OkHttpClient для модернизации? – Esperanz0

+0

Возможно, вы нашли ответ на свою проблему? – sanevys

+0

@sanevys да ... Я правильно ответил –

ответ

2

На самом деле я не знаю, почему вы не видите бревна, но вот часть моего кода, который работает отлично:

HttpLoggingInterceptor logging = new HttpLoggingInterceptor(); 
logging.setLevel(HttpLoggingInterceptor.Level.BODY); 
OkHttpClient.Builder httpClientBuilder = new OkHttpClient.Builder(); 
httpClientBuilder.addInterceptor(logging); 

String creditentials = username + ":" + password; 
_base64 = "Basic " + Base64.encodeToString(creditentials.getBytes(), Base64.NO_WRAP); 

Interceptor authorization = chain -> { 
    Request newRequest = chain.request().newBuilder() 
      .addHeader("Authorization", _base64) 
      .addHeader("Accept", "application/json") 
      .build(); 
    return chain.proceed(newRequest); 
}; 

httpClientBuilder.addInterceptor(authorization); 

_retrofit = new Retrofit.Builder() 
     .addCallAdapterFactory(RxJavaCallAdapterFactory.create()) 
     .addConverterFactory(GsonConverterFactory.create()) 
     .baseUrl(API_URL) 
     .client(httpClientBuilder.build()) 
     .build(); 
+0

Спасибо Это сработало –

3

В некоторых случаях вам необходимо разрешить расширенные журналы на определенных физических дроидов. Это можно сделать в меню разработчиков в настройках телефона Android.

Смежные вопросы