Браузер эмулятора Android и приложение несовместимы с разрешением имени хоста

У меня есть эмулятор Android, работающий на моем хост-компьютере (192.168.2.11), и DNS-сервер (привязка), работающий на моем DNS-сервере (192.168.2.12). На DNS-сервере есть запись для моего внутреннего размещенного приложения, а эмулятор Android вызывается с помощью следующей команды:

emulator @myemulator -scale 0.50 -dns-server 192.168.2.12

Из браузера Android, если я перейду на myinternal.domain.com, он сможет разрешить домен и загрузить приложение. Однако, когда HTTP-запрос выполняется через приложение, разрешение имени хоста завершается ошибкой.

Я даже пытался изменить файл /etc/hosts эмулятора, но безуспешно,

192.168.2.13    myinternal.domain.com
#10.0.2.2       myinternal.domain.com

Мое требование состоит в том, чтобы использовать имя хоста, а не IP-адрес (веб-сайт по умолчанию), поэтому я не могу изменить код для отправки HTTP-запросов на IP-адрес.

Возможно ли, что браузер Android и приложение разрешают имя хоста по-разному? Благодарю, если кто-то может помочь мне устранить эту проблему.


person Manold    schedule 13.05.2015    source источник


Ответы (1)


Я нашел ответ на свою проблему. Это непоследовательное поведение было связано с установленной версией Java (в моем случае Oracle Java). Замена его на Open-JDK версии 1.7.80 решила проблему.

Решил опубликовать это на случай, если кто-то еще столкнется с этой проблемой и не хочет тратить на это n часов :)

person Manold    schedule 04.07.2015