Мне кажется, что есть много сбивающих с толку ресурсов, касающихся темы прокси на Android.
Во-первых, кажется, что все методы класса прокси объявлены устаревшими, и предлагается:
«Использовать стандартные значения прокси java vm для поиска хоста, порта и список исключений. Этот вызов игнорирует список исключений. "
Официальные значения прокси java vm можно получить следующим образом:
System.getProperty("http.proxyHost")
System.getProperty("http.proxyPort")
System.getProperty("http.nonProxyHosts")
Это может показаться подтвержденным документацией класса ProxySelector ].
Но на реальном устройстве или эмуляторе эти значения кажутся мне всегда пустыми. После просмотра исходного кода Android скрытой активности ProxySelector кажется, что прокси сохранен в безопасные настройки системы следующим образом:
Settings.Secure.putString(res, Settings.Secure.HTTP_PROXY, hostname);
И только приложение, подписанное поставщиком ОС, может записывать в безопасные настройки. Разработчики могут получить доступ к этим настройкам только в режиме чтения следующим образом:
Settings.Secure.getString(getApplicationContext().getContentResolver(),Settings.Secure.HTTP_PROXY);
Кто-то может уточнить Если это правильное прочтение того, как получить доступ к настройкам прокси в Android? (По крайней мере, похоже, что это работает).Если это правильная интерпретация, почему документация так полна ошибок?