Доступ к Интернету для Android-приложений через прокси

У меня есть приложение для Android (Android 2.2) для доступа в Интернет через прокси.

Я попытался установить APN с прокси-хостом и портом, и он отлично работает в браузере эмулятора. Но приложению не удается подключиться к Интернету.

Я также пробовал опцию командной строки -http-proxy, она не работает.

Может кто-нибудь мне с этим помочь?


person Ashwini Shahapurkar    schedule 28.09.2010    source источник


Ответы (3)


установите разрешение для вашего приложения на доступ к Интернету в файле манифеста. например ..

<uses-permission android:name="android.permission.INTERNET" />

Для получения дополнительной информации проверьте приложение ApiDemos и thes e Документация

person Praveen    schedule 28.09.2010
comment
если по какой-либо причине это не исправляет, посмотрите в logcat и выясните, в чем заключается фактическая ошибка. - person Chris Stratton; 28.09.2010
comment
Я установил разрешения для Интернета. Logcat не отображает никаких ошибок. Веб-просмотр не может загрузить URL-адрес. Он отображает следующее: Веб-страница по адресу ‹url› может быть временно недоступна или, возможно, навсегда переместилась на новый веб-адрес. Я пробовал использовать несколько URL-адресов, но результат такой же. - person Ashwini Shahapurkar; 29.09.2010
comment
После нескольких попыток отладки logcat показывает, что www.google.com:Host не разрешен. Кажется, проблема с DNS. Затем я попытался использовать IP-адрес, но затем возникло исключение безопасности. - person Ashwini Shahapurkar; 04.10.2010

После стольких дней борьбы я обнаружил, что на Android есть проблема при доступе к https с помощью HTTP-клиента apache с прокси.

Обратитесь к этому для решения проблемы. Http://code.google.com/p/android/issues/detail? Id = 2690

Решение проблемы находится здесь.

person Ashwini Shahapurkar    schedule 05.10.2010

String myProxy=Proxy.getDefaultHost() ;
        int myPort=Proxy.getDefaultPort();
        HttpHost proxy = new HttpHost(myProxy,myPort,"http");
        client.getParams().setParameter (ConnRoutePNames.DEFAULT_PROXY, proxy); 

попробуйте указать это в своем файле Java. перед этим измените настройки прокси в эмуляторе!

person Ads    schedule 22.11.2010