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

Développement Mobile en Java Discussion :

Comment savoir si le mobile est bien connecté à internet


Sujet :

Développement Mobile en Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2010
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 40
    Points : 28
    Points
    28
    Par défaut Comment savoir si le mobile est bien connecté à internet
    Bonjour,

    Je suis actuellement à la recherche d'un moyen pour savoir si je suis bien connecté à Internet.

    Actuellement j'arrive à dire :
    • Wifi/GSM activé sur l'appareil
    • Connecté sur un réseau Wifi/GSM


    Mais même si je suis sur un AP Wifi ouvert, je n'ai pas forcément accès à Internet (authentification depuis le browser par exemple). Et je cherche un moyen de vérifier ceci.

    Est-ce q'il y a un moyen simple de faire ceci ? Je pensais me connecté à un adresse quelconque comme google, puis de vérifier s'il y a eu une redirection vers la page d'authentification.

    Mais même avec ça je ne sais pas trop comment m'y prendre.

    Sur une autre partie du forum (http://www.developpez.net/forums/d1010873/java/general-java/java-mobiles/android/controler-lacces-internet/), on parle de page blanche pour faire des tests de connexions, qu'est ce que c'est ?

  2. #2
    Nouveau membre du Club
    Inscrit en
    Novembre 2010
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 40
    Points : 28
    Points
    28
    Par défaut
    Bon j'avance gentiment, mais c'est vraiment pas propre. Une fois qu'il détecte qu'il est connecté sur un point d'accès j'utilise un InputStream, s'il génère un exception c'est que la connexion est impossible, sinon c'est que j'ai bien un accès Internet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
      public boolean isWifiOK (){
        // TODO Auto-generated method stub
        // Recupere toutes les info reseau (Wifi sur champs [1])
        ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo[] networkInfo = connectivityManager.getAllNetworkInfo();
     
        if (networkInfo[1].getDetailedState() == DetailedState.CONNECTED){
     
          try{
            URL url = new URL(URL);
            URLConnection connection = url.openConnection();
            int fileLength = connection.getContentLength();;
            InputStream input = connection.getInputStream(); // Si passe cette ligne connexion OK
     
            return true;
          } catch (IOException e){
            return false;
          }
        }
        return false;
      }
    Maintenant, est-ce possible de forcé la déconnexion à un point d'accès ? Ou alors forcer l'envoie de données en GSM

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2011
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 67
    Points : 87
    Points
    87
    Par défaut
    En faisant une recherche sur cette question, je suis tombé sur ce sujet.

    Je viens de trouver quelques précisions dans la doc Android (http://developer.android.com/trainin.../managing.html) et donc je vais les partager ;-)

    Note that you should not base decisions on whether a network is "available." You should always check isConnected() before performing network operations, since isConnected() handles cases like flaky mobile networks, airplane mode, and restricted background data.
    Ce qui signifie qu'il y a donc moyen de vérifier plus que la "simple" connectivité à "un" réseau.

    Le code proposé est celui-ci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public boolean isOnline() {
        ConnectivityManager connMgr = (ConnectivityManager) 
                getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
        return (networkInfo != null && networkInfo.isConnected());
    }
    Il fonctionne parfaitement chez moi.

    Lionel

Discussions similaires

  1. [FAQ] Comment savoir si l'on est connecté ou non à Internet
    Par Droïde Système7 dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 10/09/2008, 15h38
  2. Réponses: 1
    Dernier message: 01/06/2008, 04h58
  3. [Activ Sync]Comment savoir sir le PPC est connecter en usb ?
    Par Yotho dans le forum Windows Mobile
    Réponses: 3
    Dernier message: 25/07/2007, 16h22
  4. Comment savoir si un champ est bien actif
    Par basto dans le forum Access
    Réponses: 5
    Dernier message: 16/02/2007, 12h00
  5. [CF][C#]Comment déterminer si mon PPC est bien connecté?
    Par royrremi dans le forum Windows Mobile
    Réponses: 2
    Dernier message: 07/03/2006, 15h35

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