Android-студия отладки остальные API - PullRequest
0 голосов
/ 19 ноября 2018

Я новичок в разработке для Android.Я использую android studio для разработки приложения. Я использую модификацию для взаимодействия с остальным сервером api.it, похоже, возникает вопрос: когда я использую android studio avd для отладки запроса и ответа остальных api, я не вижу тела ответана android studio logcat событие resposne имеет статус 200. но когда я отлаживаю остальные API с помощью реального мобильного телефона, он получит правильный ответ.

Я хочу знать, не может ли android studio отладить остальные API иесли это возможно, то как мне его использовать.

Кроме того, я отлаживаю остальные API-интерфейсы, использую модифицированный перехватчик okttp.

1 Ответ

0 голосов
/ 19 ноября 2018

попробуйте этот код и добавьте приведенную ниже зависимость в файл Gradle.

    implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1'



public class ApiClient {
private final static String BASE_URL = "https://simplifiedcoding.net/demos/";

public static ApiClient apiClient;
private Retrofit retrofit = null;

public static ApiClient getInstance() {
    if (apiClient == null) {
        apiClient = new ApiClient();
    }
    return apiClient;
}

//private static Retrofit storeRetrofit = null;

public Retrofit getClient() {
    return getClient(null);
}


private Retrofit getClient(final Context context) {

    HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
    interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
    OkHttpClient.Builder client = new OkHttpClient.Builder();
    client.readTimeout(60, TimeUnit.SECONDS);
    client.writeTimeout(60, TimeUnit.SECONDS);
    client.connectTimeout(60, TimeUnit.SECONDS);
    client.addInterceptor(interceptor);
    client.addInterceptor(new Interceptor() {
        @Override
        public okhttp3.Response intercept(Chain chain) throws IOException {
            Request request = chain.request();

            return chain.proceed(request);
        }
    });

    retrofit = new Retrofit.Builder()
            .baseUrl(BASE_URL)
            .client(client.build())
            .addConverterFactory(GsonConverterFactory.create())
            .build();


    return retrofit;
}

}

он отображает все log api url, response и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...