Кому-нибудь удалось заставить эмулятор Android работать за прокси-сервером, который требует аутентификации?
Я попытался установить аргумент -http-proxy на
http://DOMAIN/USERNAME:PASSWORD@IP:PORT
но безуспешно.
Я безуспешно пытался следовать документации. Я также пробовал настройку -verbose-proxy
, но, похоже, этого больше нет.
Есть указатели?
@ AndroidRef.com не работает ...
Я не использовал эмулятор Android, но я установил переменную среды $ http_proxy для perl и wget и несколько инструментов cygwin в Windows. Это может сработать для вас для Android, но косая черта в имени домена кажется потенциальной проблемой.
Я знаю, что пытался разместить там свой домен "GLOBAL", но в итоге отказался от него и придерживался: http://$USER:[email protected]:80
Одна проблема, с которой я часто сталкиваюсь, - это программы, которым нельзя указать использовать прокси и для DNS-запросов. В тех случаях, когда это не так, я всегда получаю имя хоста, которое не найдено. Я хотел бы найти локальный преобразователь DNS, который может использовать прокси для всех программ, которые этого не делают.
Я помню, что у меня была такая же проблема - после поиска в Интернете я нашел это решение - из командной строки,
1. > adb shell
2. # sqlite3 /data/data/com.android.providers.settings/databases/settings.db
3. sqlite> INSERT INTO system VALUES(99,’http_proxy', 'proxy:port');
4. sqlite>.exit
Обновлено: Отредактированный ответ, отражающий последнюю версию Android.
в sdk 2.1 это должно быть: sqlite3 /data/data/com.android.providers.settings/databases/settings .db
Я делаю с 2.3, он показывает ошибку: Ошибка: невозможно открыть базу данных "/data/data/com.google.android.providers.settings/databases/ settings.db": невозможно открыть файл базы данных
Ошибка устранена: в версии 2.3 это должен быть sqlite3 /data/data/com.android.providers.settings/databases/settings .db, как указала Лили выше.
У меня ошибка: «Нет такой таблицы: система». Когда я перехожу в sqlite3 и это место и набираю ".tables", у меня пустая база данных. Когда я набираю ".databases", я вижу "main". Я использую Android Emulator, nexus4, api23. Пожалуйста помоги.
Похоже, SDK 1.5 и новее, флаг -http-proxy
тоже не работает. Что мне удалось, так это загрузить образ Android в эмуляторе, а затем, когда Android будет запущен, перейти к Home > Menu > Settings > Wireless Controls > Mobile Networks > Access Point Names
и затем настроить параметры прокси-сервера http для точки доступа по умолчанию.
Установив настройки прокси APN, я могу заставить браузер эмулятора просматривать веб-страницы. Однако другие вещи, такие как Карты, по-прежнему не работают.
Джей, хотя это было бы идеальным местом для этой информации, она не обновлялась до версии 2.1. Ниже я перечислю методы, которые в настоящее время НЕ работают для эмулятора 2.1.
Аргумент http-post не работает для эмулятора 2.1. Установка прокси в списке APN в эмуляторе 2.1 не работает. Вставка прокси напрямую в системную таблицу через sql-lite не работает с 2.1.
Фактически, ЕДИНСТВЕННЫЙ способ заставить браузер подключаться к Интернету через эмулятор, который я нашел в 2.1, - это вообще НЕ использовать прокси. Я очень надеюсь, что это скоро будет исправлено, потому что есть много людей с такой же проблемой.
Видимо эта проблема работает только с Android 2.x и Windows. Здесь обнаружена открытая ошибка: http://code.google.com/p/android/issues/detail?id=5508&q=emulator%20proxy&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars
Удалось сделать это в эмуляторе Android 2.2.
Go to "Settings" -> "Wireless & Networks" -> "Mobile Networks" -> "Access Point Names" -> "Telkila"
Там установите имя хоста прокси в свойстве «Прокси». и порт прокси в свойстве "Порт"
при вводе имени пользователя не забудьте указать имя домена [домен \ имя пользователя], иначе вы получите всплывающее окно авторизации прокси.
Эти настройки прокси-сервера работают в браузере Android, но не в приложении. Кто-нибудь сталкивался с подобной проблемой?
@AbhimanyuGrover да, у меня такая же проблема, вы ее уже решили?
есть ли способ программно использовать настройки прокси в нашем приложении?
Работает только фактический IP-адрес, а не имя прокси-сервера.
Мне удалось просмотреть трафик с помощью сниффера HTTP вместо прокси. Я использовал HTTPScoop, красивое маленькое приложение.
Также в использовании HTTPScoop хорошо то, что я также могу видеть трафик на моем фактическом устройстве, когда я включаю общий доступ в Интернет, и мой телефон использует Wi-Fi с моего Mac. Так что это хороший способ отладки того, что происходит на самом телефоне И в эмуляторе.
Таким образом, не имеет значения, какой эмулятор вы используете, потому что сниффер видит трафик независимо от эмулятора, устройства, настроек компилятора и т. д.
Это сработало для меня: http://code.google.com/p/android/issues/detail?id=5508#c39
По-видимому, в эмуляторе есть ошибка, которая заставляет вас использовать IP-адрес прокси вместо имени ...
Найдите файл androidtool.cfg
по адресу C:\Documents and Settings\YOUR USER NAME\.android\
.
Добавьте эту строку:
http.proxyLogin=USER@PASSWORD
Сохраните файл и попробуйте открыть Android SDK.
Я получаю ошибку 407 Proxy Auth ... все еще не работает ... :(
407 означает, что вашему прокси-серверу требуется аутентификация с использованием имени пользователя и пароля.
Я объясню все шаги:
Думаю, теперь с настройками прокси все понятно ...
Запустить командную строку.
Перейдите в папку, в которой находится ваш эмулятор. Как правило, он находится в папке инструментов Android SDK.
Затем используйте следующую команду:
emulator -avd <avd name> -http-proxy <server>:<proxy>
Используя это, мы сможем получить доступ к Интернету с помощью браузера.
Для Android2.3.3 Настройки-> Беспроводные сети-> Мобильные сети-> Имена точек доступа-> Telkila-> установите здесь прокси и порт (xx.xx.xx.xx и порт)
Использование эмулятора Android SDK 1.5 с прокси в Eclipse 3.45
Перейдите в Package Explorer -> щелкните правой кнопкой мыши проект Android -> Run As-> Run Configurations.
В разделе «Приложение для Android» в левом столбце выберите свой проект -> в правом столбце, где вы увидите Android | Target | Общие вкладки ->
Выберите Target -> внизу «Дополнительные параметры командной строки эмулятора» ->
-http-proxy http://www.gateProxy.com:1080 -debug-proxy http://www.gateProxy.com:1080
-> Выполнить / закрыть.
Для настройки прокси-сервера нам необходимо установить настройку APNS. Сделать это:
Для установки имени и apn вот ссылка:
По вашей сим-карте вы можете увидеть таблицу
У меня была такая же проблема, когда я использовал следующую команду:
emulator-x86.exe -http-proxy domain\user:password@proxyIP:port -avd MyAVD
У меня ошибка аутентификации прокси.
Наконец, мне пришлось обойти проверку подлинности NTLM прокси, используя здесь Cntlm:
http://sourceforge.net/projects/cntlm/
А затем, просто настроив cntlm.ini, вместо этого я использую следующую команду:
emulator-x86.exe -http-proxy 127.0.0.1:3128 -avd MyAVD
и работает :)
Что делать, если в пароле есть @?
Вы смотрели на это? developer.android.com/guide/developing/tools/… Джей