Intereting Posts
Как сохранить пароль на Android Надежность получения высоты строки состояния для решения проблемы прозрачной навигации KitKat Преобразование битмапа: создание растрового изображения, которое исключает прозрачные стороны из прозрачного растрового изображения Отключение onClickListener для Карт Google Android-тестирование Android, когда активность имеет анимацию Проблемы с Studio Studio Rendering Отправить электронную почту программно в Android Как загрузить несколько файлов изображений на сервер? Android Webview – видео на пользовательской области экрана в качестве наложения для потокового видео в прямом эфире rtsp Как установить новые расширения для Android Studio в IntelliJ IDEA Можно ли рендерить в RGB888 с OpenGL? Есть ли способ в android для поиска кода страны телефонии Толстый оранжевый ProgressBar вместо тонкого синего цвета Перекос текстового представления в Android Не удалось разместить объявления AdMob на сервере Android с помощью Google SDK

Запретить OkHttp / Retrofit от обхода прокси

Когда OkHttp пытается прокси, и этот маршрут терпит неудачу один раз, каждый запрос после этого запроса полностью обходит прокси-сервер Android. Поэтому отлаживать его можно с помощью Чарльза.

В настоящее время у меня есть код ниже, но он настроен только для сборки Debug. Он отлично работает, но это взлом, и мы хотим опубликовать его для всех пользователей.

Есть ли скрытая настройка OkHttpClient.dontBypassProxy, которую я не могу найти? Или, действительно ли этот код выглядит хорошим решением?

OkHttpClient.Builder baseClientBuilder = new OkHttpClient.Builder().retryOnConnectionFailure(false).connectionPool(new ConnectionPool(5, 20, TimeUnit.SECONDS)); //Ask OkHttp what proxies we have setup List<Proxy> proxies = ProxySelector.getDefault().select(URI.create("http://www.somesite.com")); if (proxies.size() > 0 && proxies.get(0) != Proxy.NO_PROXY) { //Force OkHttp to always use this proxy baseClientBuilder.proxy(proxies.get(0)); }