Question

Quelqu'un a-t-il réussi à faire fonctionner l'émulateur Android derrière un proxy qui nécessite une authentification ?

J'ai essayé de définir l'argument -http-proxy sur

http://DOMAIN/USERNAME:PASSWORD@IP:PORT

mais je n'ai aucun succès.

J'ai essayé de suivre la documentation en vain.J'ai aussi essayé le -verbose-proxy paramètre mais cela ne semble plus exister.

Des conseils ?

Était-ce utile?

La solution

J'ai réussi à le faire dans l'émulateur Android 2.2.

Go to "Settings" -> "Wireless & Networks" -> "Mobile Networks" -> "Access Point Names" -> "Telkila"

Là-bas, définissez le nom d’hôte du proxy dans la propriété « Proxy » et le port Proxy dans la propriété « Port »

Autres conseils

Il semble que à partir du SDK 1.5, le -http-proxy le drapeau ne fonctionne pas non plus.Ce qui a fonctionné pour moi, c'est de démarrer l'image Android dans l'émulateur, puis une fois Android lancé, accédez à Home > Menu > Settings > Wireless Controls > Mobile Networks > Access Point Names puis configurez les paramètres du proxy http pour le point d'accès par défaut.

Avec les paramètres du proxy APN en place, je peux faire en sorte que le navigateur de l'émulateur puisse surfer sur le Web.Cependant, d'autres éléments comme Maps ne fonctionnent toujours pas.

Je me souviens avoir eu le même problème - Après une recherche sur le web, j'ai trouvé cette solution - Depuis la ligne de commande,

1. > adb shell
2. # sqlite3 /data/data/com.android.providers.settings/databases/settings.db
3. sqlite> INSERT INTO system VALUES(99,’http_proxy', 'proxy:port');
4. sqlite>.exit

MODIFIER:Réponse modifiée pour refléter la dernière version d'Android.

Apparemment, ce problème ne se produit qu'avec Android 2.x et Windows.Il y a un bug ouvert ici :http://code.google.com/p/android/issues/detail?id=5508&q=emulator%20proxy&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

  1. Trouver le fichier androidtool.cfg à C:\Documents and Settings\YOUR USER NAME\.android\

  2. Ajoutez cette ligne :

    http.proxyLogin=USER@PASSWORD
    
  3. Enregistrez le fichier et essayez d'ouvrir le SDK Android.

Pour configurer le serveur proxy, nous devons définir le paramètre APNS.Pour faire ça:

  • Allez dans Paramètres
  • Accédez au sans fil et aux réseaux
  • Accédez aux réseaux mobiles
  • Accédez aux noms des points d'accès.Utilisez le menu pour ajouter de nouveaux apns
  • Définir le proxy = localhost
  • Définissez Port = port que vous utilisez pour créer un serveur proxy, dans mon cas c'est 8989

Pour définir le nom et l'apn, voici le lien :

D'après votre carte SIM, vous pouvez voir le tableau

Cela a fonctionné pour moi : http://code.google.com/p/android/issues/detail?id=5508#c39
Apparemment il y a un bug dans l'émulateur qui vous oblige à utiliser l'adresse IP du proxy au lieu du nom...

Jay, bien que ce soit l'endroit idéal pour ces informations, elles n'ont pas été mises à jour pour la version 2.1.Ci-dessous, je vais lister les méthodes qui ne fonctionnent actuellement PAS pour l'émulateur 2.1.

L'argument http-post ne fonctionne pas pour l'émulateur 2.1.Définir un proxy dans la liste APN dans l'émulateur 2.1 ne fonctionne pas.L'insertion du proxy directement dans la table système via sql-lite ne fonctionne pas avec la version 2.1.

En fait, la SEULE façon de connecter le navigateur à Internet via l'émulateur que j'ai trouvé dans la version 2.1 est de NE PAS utiliser de proxy du tout.J'espère vraiment que cela sera bientôt résolu, car de nombreuses personnes ont ce même problème.

  1. Démarrez l’invite de commande.

  2. Accédez au dossier où se trouve votre émulateur.En général, ce sera dans le dossier outils du SDK Android.

  3. Utilisez ensuite la commande suivante :

    emulator -avd <avd name> -http-proxy <server>:<proxy>
    

    En utilisant cela, nous pourrons accéder à Internet à l’aide du navigateur.

Utilisation de l'émulateur Android SDK 1.5 avec proxy dans Eclipse 3.45

Accédez à l'Explorateur de packages -> Cliquez avec le bouton droit sur votre projet Android -> Exécuter en tant que -> Exécuter les configurations.

Sous Application Android dans la colonne de gauche, sélectionnez votre projet -> dans la colonne de droite, où vous voyez Android | Cible | Onglets communs ->

Sélectionnez Cible -> en bas « Options supplémentaires de ligne de commande de l'émulateur » ->

-http proxy http://www.gateProxy.com:1080 -debug-proxy http://www.gateProxy.com:1080

->Exécuter/Fermer.

Je n'ai pas utilisé l'émulateur Android mais j'ai défini la variable d'environnement $http_proxy pour Perl et wget et quelques outils Cygwin sous Windows.Cela pourrait fonctionner pour vous pour Android, mais la barre oblique dans le nom de domaine semble être un problème potentiel.Je sais que j'ai essayé d'avoir mon domaine "GLOBAL", mais j'ai fini par le supprimer et m'en tenir à : http://$USER:password@www-proxy.company.com:80

Cependant, un problème que je rencontre souvent concerne les programmes auxquels on ne peut pas demander d'utiliser également le proxy pour les requêtes DNS.Dans les cas où ce n'est pas le cas, j'obtiens toujours un nom d'hôte introuvable.J'aimerais trouver un résolveur DNS local capable d'utiliser le proxy pour tous les programmes qui ne le feront pas.

J'ai pu visualiser le trafic avec un renifleur HTTP au lieu d'un proxy.J'ai utilisé HTTPScoop, qui est une jolie petite application.

L'avantage de l'utilisation de HTTPScoop est également que je peux également voir le trafic sur mon appareil actuel lorsque j'active le partage Internet et que mon téléphone utilise le wifi de mon Mac.C'est donc une bonne affaire pour déboguer ce qui se passe sur le téléphone lui-même ET sur l'émulateur.

De cette façon, peu importe l'émulateur que vous utilisez, car le renifleur voit le trafic indépendamment de l'émulateur, du périphérique, des paramètres du compilateur, etc.

Je vais vous expliquer toutes les étapes :

  1. Accédez aux paramètres de l'émulateur Android > Sans fil et réseau > Réseau mobile > Point d'accès > Telkilla > et effectuez ici les paramètres nécessaires tels que le proxy, le port, etc.

Je pense que maintenant tout est clair sur les paramètres du proxy...

Pour Android2.3.3 Paramètres->Sans fil et réseaux->MobileNetworks->AccessPointNames->Telkila-> définissez le proxy et le port ici (xx.xx.xx.xx et port)

J'ai eu le même problème lorsque j'utilise la commande suivante :

emulator-x86.exe -http-proxy domain\user:password@proxyIP:port -avd MyAVD

J'ai eu l'erreur d'authentification proxy.

Finalement, j'ai dû contourner l'authentification proxy NTLM en utilisant le Cntlm ici :

http://sourceforge.net/projects/cntlm/

Et puis après avoir simplement configuré le cntlm.ini, j'utilise à la place la commande suivante :

emulator-x86.exe -http-proxy 127.0.0.1:3128 -avd MyAVD

et il fonctionne :)

Avec les nouvelles versions d'Android Studio et de son émulateur, c'est une tâche facile.

Appuyez sur le bouton "Plus" de l'émulateur, choisissez l'onglet Paramètres -> Proxy.Toutes les configurations nécessaires sont là.

enter image description here

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top