none
Visual Studio Android Emulator - localhost RRS feed

  • Вопрос

  • Разрабатываю под Android на платформе Xamarin.

    Решил пересесть c SDK эмулятора на эмулятор VS.

    В проекте используется ServiceStack развернутый на локальной машине. Из VS эмулятора почему-то  запросить сервис не получается , хотя в "классическом" SDK эмуляторе с локальным сервисом спокойно работал по 10.0.2.2

    Как в VS эмуляторе получить доступ к localhost?

    23 ноября 2015 г. 22:06

Ответы


  • Это довольно частая проблема, она имеет две причины:

    1. Неправильная трактовка обозначения 'localhost'.  Это машина на которой выполняется код который открывает соединение, а не машина разработчика.

    2. Недопонимание того факта что большинство эмуляторов являются самостоятельными машинами (VM).

    Сложим два и два: так как эмулятор является самостоятельной машиной, то для кода который выполняется в эмуляторе localhost означает сам эмулятор.

    Таким образом ответ на ваш вопрос такой:

    Доступ к localhost у вас уже есть. Надо лишь запустить сервис на эмуляторе. 

    Конечно это не имеет смысла и вопрос надо ставить так: как из эмулятора (или физического устройства) установить соединение с удаленным сервером?

    Ответ: по имени сервера или по его IP.

    Разумеется эмулятор (или устройство) должен быть настроен нужным образом. Обычно это делается путем присвоения эмулятору IP из той же сетки в которой находится и машина разработчика. 


    This posting is provided "AS IS" with no warranties, and confers no rights.

    • Помечено в качестве ответа Pavel Dorovsky 24 ноября 2015 г. 10:33
    24 ноября 2015 г. 3:42
    Модератор