Configuration du réseau d'émulateurs Android

donc j'ai mis en place Charles proxy pour surveiller le trafic qui sort de l'émulateur android.

maintenant quand j'ouvre un site web il dans le navigateur Android pour par exemple:- google.com je vois. google.com in charles proxy.

mais quand j'ouvre une application(disons instagram app) dans l'émulateur et si l'application fait des appels réseau , je vois des adresses ip sur Charles proxy et pas des noms de domaine.

en Raison de laquelle le application me donne une erreur de quelque chose n'allait pas etc.

est-ce que quelqu'un peut me dire comment changer les DNS configurés de l'émulateur android afin qu'il envoie des noms d'hôtes au lieu d'adresses IP?

ou toute autre solution à ce problème.

Merci

30
demandé sur azero0 2015-12-23 17:48:10

6 réponses

vous pouvez configurer un proxy depuis la ligne de commande avec l'option-http-proxy lors du démarrage de l'émulateur. Dans ce cas, vous spécifiez des informations de procuration dans l'un de ces formats:

http://<machineName>:<port>

ou

http://<username>:<password>@<machineName>:<port>

l'option-HTTP-proxy oblige l'émulateur à utiliser le proxy HTTP/HTTPS spécifié pour toutes les connexions TCP sortantes. La Redirection pour UDP n'est pas supportée actuellement.

Alternativement, vous pouvez définir la variable d'environnement http_proxy à la valeur que vous souhaitez utiliser pour . Dans ce cas, vous n'avez pas besoin de spécifier une valeur pour dans la commande-http-proxy - l'émulateur vérifie la valeur de la variable d'environnement http_proxy au démarrage et utilise sa valeur automatiquement, si elle est définie.

vous pouvez utiliser l'option-debug-proxy pour diagnostiquer les problèmes de connexion proxy.

vous pouvez obtenir plus de détails sur ce sujet ici:

https://developer.android.com/studio/run/emulator-networking.html
1
répondu ocean hancock 2017-11-25 11:39:17

il n'y a aucun moyen de changer les DNS configurés de l'émulateur android qui peuvent obtenir des noms d'hôte au lieu des adresses IP, la seule option pour utiliser le proxy est d'expliquer sur d'autres threads SO ici .

je suis sûr que les paquets viennent d'instagram et/ou peut-être qu'ils utilisent un pare-feu pour des raisons de sécurité.

0
répondu Rizky Ariestiyansyah 2017-05-23 11:33:26

il n'est pas possible avec émulateur, mais vous pouvez utiliser GENYMOTION pour cela. Genymotion est un très bon outil pour utiliser l'émulateur en ligne.

enter image description here

vous pouvez définir proxy dans setting->network.

enter image description here

essayez ça .espérons que cela vous aidera.

0
répondu KDeogharkar 2016-01-04 07:30:08

Pour Utilisateur Linux

nous ne pouvons pas utiliser l'émulateur démarré depuis android studio Nous devons démarrer l'émulateur à partir du terminal en utilisant ces 2 commandes

Premier mouvement de android sdk tools dir

$ cd /home/..../Android/Sdk/tools

Deuxième démarrer votre émulateur à l'aide de cette cmd

./emulator-avd Emulator_name - http-proxy http: / / Ur adresse ip : port /

Emulator_name : ouvrez la deuxième colonne AVD Manager vous obtiendrez les noms D'émulateur, ensuite vous devez remplacer les espaces entre les noms par un underscore

like Nexus 5 API 22 -- > Nexus_5_API_22

par exemple: $ ./emulator -avd Nexus_5_API_22 -http-proxy http://12.1.0.222:8888/

0
répondu ramji 2016-12-01 05:07:40

dans votre émulateur - allez dans Paramètres ->réseau et internet ->réseau mobile ->noms D'accès. ensuite, choisissez votre réseau pour l'éditer et mettez L'IP et le port de L'ordinateur de Charles.

n'oubliez pas d'ouvrir l'émulateur avec poxy. émulateur avec mandataire

0
répondu soosita 2017-10-30 08:30:13

vous pouvez utiliser la commande 'ping' pour obtenir l'adresse IP.

-2
répondu Mr.Wu 2017-06-23 10:27:47