|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
![]() ![]() Sylvain BerfiniEtudiant en alternance Inscription : février 2009 Messages : 423 ![]() |
Bonjour,
Voici un nouveau tutoriel expliquant comment se servir du broadcast UDP sous Android pour trouver automatiquement l'adresse IP d'un serveur sur le même réseau Wi-Fi local. Merci de poster vos remarques ou question à la suite. |
|
20
|
|
|
#2 |
|
Membre Expert
![]() ![]() Mathias SeguyFondateur Android2EE - Formation Expertise Android Inscription : avril 2011 Messages : 113 ![]() |
Bonjour,
Super article, j'en ai les yeux qui brillent tellement c'est beau. ![]() Juste une question toute bête, le code serveur je le déploie où et sur quoi ? Je fais un war et c'est fini? |
|
00
|
|
|
#3 |
![]() ![]() Sylvain BerfiniEtudiant en alternance Inscription : février 2009 Messages : 423 ![]() |
Bonjour,
Ravi que tu ai apprécié. Pour le code serveur, celui que je donne est un code serveur pour application Android, pour le cas ou l'on fait une application voulant dialoguer avec une autre instance d'elle même sous la forme d'un échange client serveur. Après pour un serveur "classique", le principe est le même, bien que l'API puisse changer. Il suffit de créer une socket serveur en UDP. Bonne continuation. |
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Mathias SeguyFondateur Android2EE - Formation Expertise Android Inscription : avril 2011 Messages : 113 ![]() |
Fichtre dis donc, j'avais pas compris.
Ca veut dire que le code serveur je le colle dans mon application Android dans sa partie serveur et ça marche tout seul? J'ai pas besoin de demander des permissions, ni de mettre ce code dans un service, comment ton code est appelé ? Ton application "serveur" tourne en permanence? Aurais-tu un cas d'utilisation? |
|
00
|
|
|
#5 |
![]() ![]() Sylvain BerfiniEtudiant en alternance Inscription : février 2009 Messages : 423 ![]() |
Imagines 2 boutons dans une Activity, un nommé "Serveur" et l'autre "Client".
Si tu cliques sur serveur, il crée un objet Discovery (le nom de ma classe), et appelles "waitingForDiscover()". Le bouton "client" lui crée une instance de Discovery et ensuite appelles getServerIp(). Si le retour de la fonction est null, alors aucun serveur n'a été trouvé, sinon elle renvoie l'IP du serveur, et ce dernier a arrêté son serveur UDP entre temps. |
|
00
|
|
|
#6 |
|
Membre Expert
![]() ![]() Mathias SeguyFondateur Android2EE - Formation Expertise Android Inscription : avril 2011 Messages : 113 ![]() |
Et ensuite je parle entre eux en utilisant le protocole TCP ou UDP comme je veux.
Magique. Je pense que tu pourrais rajouter ton dernier post dans un paragraphe exemple d'utilisation dans ton article, cela éclairerait pas mal de monde. En tout cas super. ![]() merci pour ton article |
|
00
|
|
|
#7 | |
![]() ![]() Sylvain BerfiniEtudiant en alternance Inscription : février 2009 Messages : 423 ![]() |
Citation:
Et tu as raison je vais rajouter dans le tuto le mode d'utilisation. |
|
|
00
|
|
|
#8 | ||
|
Candidat au titre de Membre du Club
![]() |
Bonjour,
Etant en stage, je dois créer une application sur smartphone permettant d'envoyer des jpeg à un mobile embarqué. Ma contrainte est que la communication doit se faire via le wifi en udp par un réseau, je suis donc tombé sur ton code (qui est très bien), néanmoins qu'en je l'utilise tel quel, mon application plante juste avant le "socket.send(packet);". Via le module ddms, j'ai récupéré quelque infos entre autres : Citation:
Citation:
Et après plusieurs débogage, je ne vois pas ce qui pourrait merder. Je développe sous un Xpéria version 2.1-update (API 7) sans carte sim, je peux me connecter manuellement avec le wifi au réseau local de l'entreprise. Je précise aussi que je suis débutant sous android... Merci pour votre aide, Cordialement |
||
|
00
|
|
|
#9 |
![]() ![]() Sylvain BerfiniEtudiant en alternance Inscription : février 2009 Messages : 423 ![]() |
Vérifie qu'au moment d’exécuter ton appli tu sois bien connecté au WiFi, et si c'est pas ça que dans ton fichier Manifest.xml tu demandes bien la permission Internet.
|
|
00
|
|
|
#10 |
|
Candidat au titre de Membre du Club
![]() |
Pour ce qui est du manifest internet est bien présent mais effectivement je pensais qu'il suffisait d'activer le wifi et non d'y être connecté (je ne sais pas pourquoi j'ai compris ça).
Merci en tout, j'ai encore des erreurs mais je regarderai ça demain ^^. |
|
00
|
|
|
#11 |
|
Invité régulier
![]() Gaëtan Étudiant Inscription : janvier 2012 Messages : 9 ![]() |
Hello !
Je voulais utiliser (ou au moins tester) cette classe pour un projet que j'ai pour les cours, mais je n'arrive pas à savoir à quelle classe fait référence cette ligne : Code :
String myAdress = Engine.getIpAddress(); |
|
00
|
Copyright © 2000-2013 - www.developpez.com