IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Créer une balise WiFi


Sujet :

Android

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Mai 2002
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Mai 2002
    Messages : 91
    Points : 55
    Points
    55
    Par défaut Créer une balise WiFi
    Salut,
    Je suis assez débutant sur le développement Android .
    Je souhaiterais créer une "balise" wifi avec mon tel Android.
    Je voudrais que sur un téléphone Android, mon appli démarre et qu'elle lance un message chaque seconde sur le wifi.
    Ce que je ne veux pas : me connecter à un AP, créer un AP, être un serveur ou me connecter à un serveur (via socket), j'ai déjà essayé tout ça, ça ne correspond pas à ce que je cherche .
    Donc, lancer mon appli et dans celle-ci, une boucle qui chaque seconde envoie sur le réseau wifi un "hello, my name is pilou007".
    Et bien sur, toujours sans se connecter à un AP ou à un serveur, avec mon second téléphone, je souhaiterais voir passer sur le wifi ce message.
    Merci d'avance

  2. #2
    Membre expert
    Avatar de moritan
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2005
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2005
    Messages : 687
    Points : 3 135
    Points
    3 135
    Par défaut
    Donc, lancer mon appli et dans celle-ci, une boucle qui chaque seconde envoie sur le réseau wifi un "hello, my name is pilou007".
    Désolé mais ça ne veux rien dire.
    Le wifi est un moyen de connexion réseau, si tu ne veux pas être relié à un AP alors tu ne sera relié à rien.
    Ensuite, si on considère que tu est relié à un AP.
    Il te faudra communiqué avec un protocole quelconque HTTP, FTP, SSH mais surtout il te faudra dialoguer avec une autre machine.

    Décrire un besoin en 1 phrase comme tu l'as fait reviens à dire :
    "je veux faire une balade à vélo mais sans monter sur un vélo, sans vélo, et sans sortir de chez moi, Comment faire ? "

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Mai 2002
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Mai 2002
    Messages : 91
    Points : 55
    Points
    55
    Par défaut
    Salut,
    Merci pour ta réponse, mais ce que je dis veut dire quelque chose, le Wi-Fi n'est pas un moyen de connexion réseau, mais juste un moyen de communiquer via des ondes électromagnétique, maintenant, je ne vois pas en quoi vouloir utiliser les ondes wi-fi pour faire une sorte de talkie walkie ne veut rien dire.
    Un AP envoie bien périodiquement son SSID de façon à ce que l'on puisse s'y connecter, et sans être connecté à quoi que ce soit. De l'autre côté, les appareil mobiles scan le réseau et liste les SSID reçus.
    Je ne vois pas en quoi ma demande est différente de ça... Sauf que moi je ne souhaite pas envoyer un SSID, ni créer un AP, mais juste envoyer un "hello world" sur les onde Wi-Fi que je devrait pouvoir capter d'un autre coté...
    Bye
    Pascal

  4. #4
    Membre régulier
    Inscrit en
    Janvier 2010
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 89
    Points : 100
    Points
    100
    Par défaut
    Le WiFi Direct consiste à faire communiquer en mode peer to peer. ça a été introduit à partir de l'API level 4.
    Est-ce que tu veux cherches à faire une application avec le WiFi Direct?
    http://developer.android.com/guide/t...s/wifip2p.html

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2010
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 89
    Points : 100
    Points
    100
    Par défaut
    Citation Envoyé par abablex Voir le message
    ça a été introduit à partir de l'API level 4.
    Android 4.0 (API level 14), pardon

  6. #6
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    le Wi-Fi n'est pas un moyen de connexion réseau
    Si, le WiFi est un standard de WLAN (Wireless LAN), et par voie de conséquence un protocole réseau.
    Le ad-hoc WLAN (aka WiFi Direct), n'est rien de plus qu'un appareil qui se déclare en WAP (Wireless Access Point) ouvert...

    Le WiFi est un protocole de niveau 2 (DataLink + Physical), basé sur des paquets... Bref un peu comme ethernet (d'ailleurs WiFi et Ethernet font partie des normes IEEE802).

    Il est donc (théoriquement) possible d'envoyer des paquets "broadcast" sur tous les canaux, et de les écouter...

    Comme la plupart des "piles" réseaux, les parties DataLink+Physical sont directement codées dans la puce qui les rends disponibles (carte réseau, puce WiFi), et si le broadcast est certainement accessible au niveau "driver", il l'est certainement moins au niveau logiciel (le système proposant plutôt des couches niveau 3 voir 4, et s'occupant de la gestion du lien entre celles ci et les multiples niveaux 2: 3G, WiFi, ...).

    A noter que les puces introduisent très fréquemment la gestion des niveaux 3 (Network) afin de supprimer cette "charge" du processeur et d'optimiser les flux (par exemple les switch professionnels marchent beaucoup mieux parce qu'ils sont capables de comprendre le protocole IP, alors qu'un switch est théoriquement de niveau 2)...

    Donc la réponse est:
    * Comme sur tout OS, il doit être possible d'envoyer des trames de niveau DataLink en passant par le driver (low-level)... Donc avec une programmation en C, et les droits nécessaires bien sur...
    * Le système quant à lui ne propose même pas l'accès au niveau network par defaut (pas de 'Raw IP' dans Android), juste au niveau transport (TCP/UDP/...), c'est dire le peu de chances qu'il y a de pouvoir faire ce que tu souhaite en Java.
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2010
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 89
    Points : 100
    Points
    100
    Par défaut
    Citation Envoyé par nicroman Voir le message
    * Le système quant à lui ne propose même pas l'accès au niveau network par defaut (pas de 'Raw IP' dans Android),
    Et donc même avec nos
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
        <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
    on est toujours sur la couche transport???

  8. #8
    Membre du Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Mai 2002
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Mai 2002
    Messages : 91
    Points : 55
    Points
    55
    Par défaut
    Salut,
    Merci pour vos réponses, quand je disais que ce n'est pas un protocole réseau, je pensai justement au couche 1 et 2... Bon on ne va pas rentré dans ce débat...

    Donc si j'ai bien compris, ce n'est pas possible alors!!??
    je peux imaginer que cela ne le soit pas avec les api Java, mais si j'utilise une librairie développé par mes soin en C, en utilisant un code natif avec android-NDK par exemple... Est-ce possible? Si oui, auriez vous des piste pour démarrez ce code natif? Après, l'utiliser avec les api Java, je sais faire, mais c'est ce code natif que je ne sais pas comment commencer..
    Merci
    Pascal

  9. #9
    Membre du Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Mai 2002
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Mai 2002
    Messages : 91
    Points : 55
    Points
    55
    Par défaut
    Salut,
    J'ai oublié de répondre à Abablex...
    Non, je ne souhaite pas utiliser le Wi-Fi direct, car dans ce cas, je me connecte à un appareil mobile, un peu comme le bluetooth.
    ce que je souhaite c'est vraiment que chaque appareil mobile reste indépendant les un des autres, qu'ils puisse envoyer des trames via le Wi-Fi et scanner le réseaux pour "voir" ces trames...
    Bye
    Pascal

  10. #10
    Membre expert
    Avatar de moritan
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2005
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2005
    Messages : 687
    Points : 3 135
    Points
    3 135
    Par défaut
    Tu peux regarder du coté de serval. C'est pas vraiment la meme chose mais tu auras un exemple de projet exploitant le wifi


    https://github.com/servalproject/

  11. #11
    Membre régulier
    Inscrit en
    Janvier 2010
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 89
    Points : 100
    Points
    100
    Par défaut
    The serval project est tout aussi de la communication peer to peer, ça revient presqu'au WiFi Direct, ce qu'on est indépendant de l'infrastructure du réseau de l'opérateur téléphonique pour passer des appels: C'est une sorte de "voix sur WiFi" où les mobiles sont routés et se comportent en AP pour rélier les uns aux autres via le WiFi.
    C'est effectivement un grand projet qui peut ouvrir d'autres pistes sur l'exploitation du WiFi,notamment ce que tu imagines pilou007

  12. #12
    Membre du Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Mai 2002
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Mai 2002
    Messages : 91
    Points : 55
    Points
    55
    Par défaut [RESOLU]
    J'ai pas mal étudié le projet Haggle qui se rapproche beaucoup de ce que je recherche, je vais creuser de ce coté...
    Merci
    Bye
    Pascal

  13. #13
    Membre actif
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 168
    Points : 212
    Points
    212
    Par défaut
    Et le protocol mDNS ça pourrait pas marcher ?

  14. #14
    Membre du Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Mai 2002
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Mai 2002
    Messages : 91
    Points : 55
    Points
    55
    Par défaut
    Hummmm!!! Ca ne me semble pas compatible avec ce que je veux, c'est à dire rien, aucune adresse aucun protocole (ou un protocole, mais je verrai pas la suite), juste je diffuse sur le medium Wi-Fi et le lis le medium Wi-Fi...
    Bye
    Pascal

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. créer une balise simplifiant les répétitions
    Par moussecp dans le forum Programmation (La)TeX avancée
    Réponses: 4
    Dernier message: 30/03/2012, 18h23
  2. DOM: créer une balise enfant
    Par celegorm dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 07/09/2011, 10h20
  3. [XML::Twig] créer une balise
    Par ellgafsi dans le forum Modules
    Réponses: 1
    Dernier message: 30/04/2009, 09h29
  4. Créer une balise xml sans namespace
    Par Gregory.M dans le forum Windows Forms
    Réponses: 0
    Dernier message: 17/03/2009, 11h59
  5. créer une connexion wifi
    Par lenul79 dans le forum Réseau
    Réponses: 5
    Dernier message: 14/12/2006, 07h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo