Не удается получить доступ к localhost с устройства Android - PullRequest
8 голосов
/ 30 ноября 2011

Эмулятор может получить доступ к веб-службе с локального хоста, но мое реальное устройство не может, хотя я использую IP-адрес локальной сети (192.168.xx.yyy) вместо 10.0.2.2. Конечно, мой мобильный Android был распознан adb, и он подключил мой ноутбук через USB-порт.

Я уже читал некоторые подобные вопросы в stackoverflow, но все еще не знал, как получить доступ к веб-сервису с реального мобильного телефона Android. Ответ на этот вопрос Как я могу получить доступ к своему локальному хосту с моего устройства Android? Может быть полезным, но я не совсем понимаю этот ответ.

Кто-нибудь мне помогает? Спасибо тебе!

Ответы [ 3 ]

8 голосов
/ 25 мая 2013

Возможно, веб-сервер прослушивает петлевой интерфейс, но не сетевой интерфейс. Это означает, что нажатия на 127.0.0.1 и localhost будут работать, но 192.168.xxx.xxx не будет (с локального хоста, локальной сети или глобальной сети).

Чтобы определить, какой интерфейс прослушивает сервер, посмотрите здесь , чтобы узнать команду о портах прослушивания (я использовал lsof -Pan -i tcp -i udp). Затем найдите ваш серверный процесс в списке. Для команды lsof, если для порта 8888 вы видите что-то вроде TCP *:8888 (LISTEN), то ваш сервер прослушивает все интерфейсы. Но если вместо этого вы видите что-то вроде TCP [::127.0.0.1]:8888 (LISTEN), значит, вы определили свою проблему!

Следующим шагом для решения вашей проблемы является настройка конфигурации запуска вашего сервера для прослушивания всех интерфейсов. Я не знаю, какой сервер вы используете, но если вы можете указать IP-адрес, вы можете попробовать 0.0.0.0. Обычно вы можете сделать это рядом, где это позволяет вам указать порт прослушивания. Таким образом, если у вас есть такая конфигурация:

--port 8888

Тогда вы можете попробовать:

--port 8888 --address 0.0.0.0

0 голосов
/ 02 июля 2013

На мой взгляд, следующий пункт более важен для сообщества разработчиков

Я не сетевой эксперт; как и я, многие разработчики могут быть там.

изменить на 0.0.0.0:80 в httpd.conf очень важно.

В обычных (по умолчанию) настройках порт 8888 выдает ошибку в WAMPSERVER (даже в браузере Windows). Вот почему я объяснил точную среду, в которой порт 8888 выдает ошибку.

Более важна конкретная информация о том, какая конфигурация выдает ошибку и какая конфигурация работает успешно.

0 голосов
/ 30 ноября 2011

Вы пытались использовать Wi-Fi роутер, который подключен к вашей локальной сети? Тогда вам просто нужно подключиться к Wi-Fi с помощью мобильного телефона, и вы сможете получить доступ (192.168.xx.yyy)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...