2016-04-27 19 views
12

ich alle Fäden zu diesem Thema und die Anleitungen zum Einrichten charles mit genymotion sind alle gleich lesen:Charles Proxy für Genymotion stoppt 10.0.3.2 localhost Verkehr

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 

Mein Set up ist:

  1. A localhost Entwicklung Frühlings-Server läuft auf meinem Mac OS
  2. Eine Android-App auf meinem Genymotion-Emulator installiert. Der genymotion Emulator kommuniziert mit meinem lokalen Dev-Server über IP 10.0.3.2 (How to access localhost from a Genymotion android emulator?)

Ich bin nicht sicher, wenn die Anweisungen alt sind, aber das Problem, das ich habe, ist, dass der Verkehr, die aus fließt mein genymotion Emulator aufgezeichnet in Charles Proxy, aber es erreicht gerade nicht meinen localhost Server. Ich verwende keine SSL-Verschlüsselung zwischen meinem Server und meiner App.

Dies ist meine Einstellungen in genymotion wifi Bildschirm:

enter image description here

Dies ist, was mein Charles Proxy aussieht - man kann sehen, dass es "auf Remote-Host-Anschluss". Es verbindet für immer und dann schließlich landet mir einen 503 Fehler auf meiner android app Seite mit nichts geben zurückgegeben werden:

enter image description here

Wenn ich Charles Proxy ausschalten, die App verbindet sich mit meinem localhost-Server ohne Probleme und Alle Anrufe werden erfolgreich zurückgegeben. Ich denke, dass es etwas mit Charles zu tun hat, das meine App daran hindert, mit meinem Localhost-Server zu kommunizieren.

In Postman, wenn ich versuche, die gleiche URL abzufragen, die mein Android-App zur Abfrage wurde versucht, es funktioniert erfolgreich und die Ergebnisse sind auch erfolgreich innerhalb Charles protokollieren:

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

Der einzige Unterschied zwischen Abfragen in Postman und in meiner android app Abfrage ist, dass meine App diese uRL 10.0.3.2 stattdessen trifft, weil ich einen Emulator Abarbeiten bin:

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

ich auch meine Access Control 10.0.3.2 in Einstellungen hinzugefügt haben:

enter image description here

Ich kann für Websites wie www.msn.com mein android genymotion Emulator Internet-Browser und suchen gehen und es wird wieder erfolgreich und die Ergebnisse innerhalb von Charles einzuloggen, aber ich bin nicht auf der Suche nach oder bereit sind, Zahle 50 USD für ein Tool, um meinen Android-Browser-Verkehr aufzuzeichnen. Ich brauche es mit meiner Android-App zu arbeiten, damit ich meine App debuggen kann. Ich bin mir nicht sicher, wie ich das beheben soll. Weiß jemand hier, ob ich etwas verpasse?

EDIT:

Falls jemand fragt, habe ich diesen Beitrag auf Charles' FAQ über Localhost Verkehr gelesen erscheint nicht in Charles:

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

Aber es ist nicht wie ich kann die 10.0.3.2 von Genymotion zu http://localhost.charlesproxy.com/ stattdessen ändern, so glaube ich nicht, dass das mein Problem lösen würde.

Antwort

1

Also spielte ich jetzt mit dem Genymotion-Emulator und Charles herum und ich schaffte es tatsächlich, Charles dazu zu bringen, den localhost-Verkehr aufzuzeichnen.

Ähnlich wie ich durch Postman abgefragt mit:

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

Ich habe gerade den Host-Teil aller meiner api Endpunkte: http://localhost.charlesproxy.com:8443/ und es funktionierte.