2016-04-27 7 views
12

Я прочитал все темы про эту тему и инструкции по настройке Чарльзу с genymotion все же:Charles Proxy для Genymotion останавливает 10.0.3.2 локальный трафик

http://rexstjohn.com/using-genymotion-charles-proxy/

In your Genymotion Android emulator… 
Settings -> Wifi -> Press and hold your active network 
Select “Modify Network” 
Select “Show Advanced Options” 
Select “Proxy Settings -> Manual” 
Set your Proxy to: 10.0.3.2 (Genymotion’s special code for the local workstation) 
Set your Port to: 8888 
Press Save 

Мой набор вверх является:

  1. Весеннего сервер разработки локальной работает на моем Mac OS
  2. Android-приложение, установленное на моем эмуляторе genymotion. Genymotion эмулятор общается с моим локальным сервером Dev через IP 10.0.3.2 (How to access localhost from a Genymotion android emulator?)

Я не уверен, если инструкции устарели, но проблема у меня в том, что трафик, который течет из моего genymotion эмулятор записанный в Charles Proxy, но он просто не доходит до моего локального сервера. Я не использую SSL-шифрование между моим сервером и моим приложением.

Это мои настройки внутри экрана genymotion Wi-Fi:

enter image description here

Это то, что мой Чарльз прокси выглядит - вы можете видеть, что это «Подключение к удаленному узлу». Он соединяет навсегда, а затем в конечном итоге заканчивается давая мне 503 ошибку на моем андроиде стороны приложения ни с чем возвращается:

enter image description here

Если я выключаю Charles Proxy, приложение соединяется с моим LOCALHOST сервером без проблем и все вызовы возвращаются успешно. Я думаю, что это как-то связано с Чарльзом, который останавливает мое приложение от общения с моим сервером localhost.

В Почтальон, если я пытаюсь запросить тот же URL, что мой андроид приложение пытался запросить, она успешно работает, и результаты также успешно вошли в Charles:

http://localhost:8443/ + my api endpoint **OR** http://localhost.charlesproxy.com:8443/ + my api endpoint 

Единственное различие между запрашивая в Почтальон и запрашивая в моем андроид приложения является то, что мое приложение попадет этот адрес 10.0.3.2 вместо потому что я отработка эмулятора:

http://10.0.3.2:8443/ + my api endpoint 

Я также добавил, 10.0.3.2 в мой доступе к настройкам управления:

enter image description here

Я могу пойти в мой андроид genymotion эмулятор интернет-браузер и поиск веб-сайтов, таких как www.msn.com и он вернется успешно и запись результатов в пределах Чарльз, но я не ищу или готовы заплатите 50 долларов за инструмент для записи моего трафика браузера Android. Мне нужно, чтобы он работал с моим Android-приложением, чтобы я мог отлаживать свое приложение. Я не уверен, как это исправить, знает ли кто-нибудь, если я что-то упускаю?

EDIT:

В случае, если кто-то интересно, я прочитал этот пост FAQ Чарльза о Localhost трафика не появляется в Charles:

https://www.charlesproxy.com/documentation/faqs/

Но это не например, я могу изменить 10.0.3.2, используемую Genymotion, вместо http://localhost.charlesproxy.com/, поэтому я не думаю, что это решило бы мою проблему.

ответ

1

Итак, теперь я играл с эмулятором Genymotion и Чарльзом, и мне действительно удалось заставить Чарльза записывать движение на локальном хосте.

Подобно тому, как я запрошены через Почтальон с:

http://localhost.charlesproxy.com:8443/ + my api endpoint 

Я просто изменил хозяина часть всех моих API конечных точек для: http://localhost.charlesproxy.com:8443/, и она работала.

Смежные вопросы