comment faire pour exécuter wifi par les pairs de l'application dans l'émulateur android..?

j'essaie de développer une application WiFi peer to peer sur android(4.+). Le problème ici est de savoir comment le tester.

j'ai essayé d'exécuter l'application dans l'émulateur android. il n'y avait aucune option pour configurer le wifi dans le menu Paramètres, j'ai également fatigué d'activer le wifi en utilisant l'Application dev tools DE l'émulateur, mais il n'a pas fonctionné, et à travers tout mon googling sur 3 jours et j'ai constaté que L'émulateur Android n'est pas pris en charge le Wifi.

Donc je opté pour androidx86 4.0 eeepc en utilisant la boîte virtuelle et fatigué d'ajouter des appareils à la fois wifi et bluetooth (mon application utilise à la fois bluetooth et wifi), mais seul appareil bluetooth a été ajouté et il n'a pas fonctionné. Mais ma boîte virtuelle a détecté le wifi et les appareils bluetooth. Je n'ai pas pu les faire marcher avec la machine virtuelle.

j'ai tout essayé comme ajouter manuellement les adresses en utilisant l'application d'émulateur de terminal dans androidx86 et utilisé netcfg par le biais de la ligne de commande android, mais ni l'un ni l'autre d'entre eux travaillaient.

s'il vous plaît suggérer et me guider sur le bon chemin pour exécuter ce genre d'applications qui utilisent wifi et bluetooth dans android.

Merci d'avance.

22
demandé sur mani 2012-03-13 14:24:47

4 réponses

tout d'abord, assurez-vous D'avoir activé WiFi Direct dans les paramètres Android pour les deux instances virtualbox:

Paramètres -- > Sans Fil & Réseaux -- > Plus... -- >Wi-Fi direct

il a été déclaré comme travaillant une fois que cet obstacle a été surmonté, et je suis sûr que beaucoup ont connu la même chose...juste être sûr de Activer wifi direct

j'aurais essayé exactement ce que vous avez déjà essayé en passant naturellement de l'émulateur au projet androidx86. Bien que peu fiable, je recommande de regarder et de peaufiner ceci, si vous ne l'avez pas encore vu: Android: simuler WiFi dans l'émulateur? et comment désactiver/activer le réseau, passer au Wifi dans L'émulateur Android? n'aurait probablement pas de succès complet mais pourrait être suffisant pour vous faire savoir que cela fonctionne ou fonctionnerait.

en ce qui concerne les essais WiFi-Direct / WiFiP2P sans que vous ayez vous-même un appareil/s, je recommande:

  • essayer le violon comme mentionné ci-dessus. Et lire des tonnes de bûches.
  • vous pourriez toujours la source de foule à des amis, ou libérer un apk sur un forum pour un petit groupe de testeurs.

bien sûr, ces deux options ne sont pas idéales, sans soudure, ou rapide. Donc, j'espère vraiment que vous obtiendrez VirtualBox VMs D'AndroidX86 4.0 tournant comme il se doit une fois que vous vérifiez que le réglage et la paire vers le haut de L'APs WiFi: -)

6
répondu TryTryAgain 2017-05-23 11:47:19

Un proche avenir la solution:

cela pourrait être quelque chose à examiner dans un avenir proche. Les appareils réels sont hébergés par Samsung et les écrans sont redirigés vers votre PC.

http://developer.samsung.com/remoteTestLab.do

selon un email répondu par samsung, que je leur ai envoyé plus tôt. Ils n'ont que 2 appareils (Galaxy Nexus) fonctionnant sur Android v4.0 actuellement. Malheureusement, ils ne sont pas physiquement proches les uns des autres. (Un en Corée, un en Pologne)

mais ils prévoient de mettre à niveau Galaxy S2 existant en v4.0. Parce que récemment Samsung ont libéré v4.0 mise à niveau pour S2. Une fois qu'ils auront fait ça, il y aura beaucoup de v4.0 téléphones.

et vous pouvez leur demander quels sont les 2 téléphones physiquement proches afin que vous puissiez tester Wifi Direct.

--------------------------- MODIFIER ---------------------------------

Il ya beaucoup de dispositifs ICS là-bas maintenant, que vous pouvez tester P2P. Vérifiez avec eux quels 2 sont physiquement proches l'un de l'autre.

5
répondu Calvin 2012-07-12 11:02:50

Par le docs :

chaque instance de l'émulateur tourne derrière un routeur virtuel / pare-feu service qui l'isole du réseau de votre machine de développement interfaces et paramètres et à partir de l'internet.

vous devez utiliser la Redirection du réseau, comme décrit dans le Developer Docs . Essentiellement, vous faites suivre des ports spécifiques en utilisant ADB. Par conséquent, vous ne pouvez pas tester certaines choses comme les messages diffusés.

j'ai essayé de faire ce que vous essayez de faire, et-- bien que je ne dirai pas que c'est impossible (tout est possible avec assez de temps, d'argent et de persévérance)-- j'ai perdu beaucoup de temps avec. Vous ne pouvez pas traiter L'émulateur Android comme un périphérique réseau normal de pair à pair. Pour autant que j'ai pu le trouver, C'est une bifurcation de QEMU, et c'est exactement comme cela que L'émulateur QEMU est implémenté.

QEMU lui-même does support TUN/TAP bridging , mais je n'ai jamais pu le faire fonctionner avec L'émulateur Android. Si vous voulez suivre cette voie, vous pourriez vouloir explorer L'exécution D'Android dans L'émulateur QEMU, plutôt que dans L'émulateur du SDK (je vois que vous essayez déjà une approche similaire avec VirtualBox).

malheureusement, la meilleure façon de tester un programme de réseau pair-à-pair dans Android est avec physique périphériques en ce moment-- à moins que votre application ne puisse suffire avec la méthode de transfert de port.

Voir Aussi: Question 26:Émulé Androïdes devrait être en mesure de communiquer via TCP , et Google

3
répondu transistor1 2012-03-22 14:49:29

(Répéter ici ma réponse ailleurs .)

en théorie, linux (le noyau sous-jacent à android) a mac80211_hwsim pilote, qui simule WiFi. Il peut être utilisé pour mettre en place plusieurs appareils WiFi (un point d'accès, et un autre appareil WiFi, et ainsi de suite), qui constitueraient un réseau WiFi.

c'est utile pour tester des programmes WiFi sous linux. Peut-être, même sous mode utilisateur linux ou d'autres" boîtes " virtuelles isolées avec linux.

en théorie, ce pilote pourrait être utilisé pour des tests dans les systèmes android où vous n'avez pas de véritable appareil WiFi (ou ne voulez pas l'utiliser), et aussi dans une sorte d'émulateurs android. Peut-être, on peut gérer d'utiliser ce pilote dans android-x86, ou--pour tester--dans android-x86 exécuter dans VirtualBox.

1
répondu imz -- Ivan Zakharyaschev 2017-05-23 12:10:27