72 votes

Comment désactiver la connexion Internet dans l'émulateur Android ?

J'essaie de vérifier la connectivité Internet sur Android en utilisant la méthode suivante. Je dispose d'une connexion Wi-Fi.

private boolean checkInternetConnection() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

    // Test for connection
    if (cm.getActiveNetworkInfo() != null
            && cm.getActiveNetworkInfo().isAvailable()
            && cm.getActiveNetworkInfo().isConnected()) {
        return true;
    }
    else {
        // No conection
        return false;
    }
}

Je déconnecte mon PC d'Internet puis j'essaie d'exécuter la méthode ci-dessus. Pourtant, elle renvoie toujours true ? Pourquoi ?

2 votes

Essayez cette chose sur l'appareil pas sur l'émulateur, il retournera toujours des résultats incertains sur l'émulateur sur ces choses... ! !!

0 votes

Mais je dois montrer les résultats sur l'émulateur Y a-t-il un moyen de montrer les résultats sur l'émulateur ?

1 votes

En utilisant le Pixel_3a_API_30_x86 et Android 11 dans l'émulateur, cela semble à peu près impossible. Le wifi se rallume lorsqu'il est éteint et le mode airplaine ne fait aucune différence. Ce à quoi j'ai fini par avoir recours, c'est de changer les URL ou de désactiver la connexion internet sur mon ordinateur.

86voto

MKJParekh Points 18108

De l'éclipse

Pour désactiver la connexion Internet, allez dans Eclipse et faites

menu Window -> Show view -> Other -> Android -> Devices

Sélectionnez maintenant votre émulateur en cours d'exécution et allez de nouveau à :

menu Window -> Show View -> Other -> Android -> Emulator Control

Maintenant, dans ce... set Data to Unregister de la maison.

Depuis le dispositif et l'émulateur

Sur l'appareil ou dans l'émulateur, allez dans :

Setting -> Wireless & networks -> Airplane Mode -> OK

0 votes

@user370305 oui bien sûr c'est à partir de l'émulateur et de l'appareil ok je vais ajouter cela aussi dans la réponse.

5 votes

Ok... J'ai essayé toutes les options possibles. isAvailable dans les retours de code false . Pourtant, lorsque mon service tente de se connecter au site distant, il y parvient et termine le téléchargement. Peut-être un bug dans l'émulateur ?

0 votes

Pour moi, le Depuis le dispositif et l'émulateur Cette option a également empêché Android Studio de se connecter à l'émulateur, ce qui n'a pas été très utile pour le débogage !

31voto

doraemon Points 4099

Essayez la commande suivante

WIFI:
$ adb shell svc wifi enable
$ adb shell svc wifi disable
MOBILE DATA:
$ adb shell svc data enable
$ adb shell svc data disable

1 votes

Activer et désactiver le wifi et les données mobiles n'est pas la même chose. Parfois, vous voulez tester que le wifi est activé (et peut-être connecté) mais pas la connexion Internet.

2 votes

Ne fonctionne pas pour moi dans la dernière version d'Android Studio. Après avoir exécuté adb shell svc wifi disable le wifi est toujours activé.

30voto

Vigbyor Points 2344

Vous pouvez désactiver la connexion Internet en appuyant sur F8 dans n'importe quel émulateur Android. Il s'agit d'un bouton de basculement, donc s'il n'a pas de connexion Internet, il démarrera la connexion Internet et s'il a déjà une connexion Internet, il la déconnectera.

0 votes

Non, vous n'êtes pas en retard Merci.

0 votes

Cela ne me permet plus de déboguer - eclipse lance un nouvel émulatr après avoir appuyé sur f8 (même après l'avoir appuyé deux fois). C'est également le cas avec d'autres méthodes comme l'arrêt de l'avion.

6 votes

Cela ne fonctionne pas dans mon cas. J'utilise Android studio 3.3

28voto

Fangming Points 10276

Mise à jour d'Android Studio 3.0

Il suffit de glisser et d'ouvrir le centre de contrôle et de cliquer sur le bouton de mode avion comme vous le faites sur votre appareil actuel.

S'il vous plaît, soyez indulgent avec moi pour un émulateur très lent.

enter image description here

0 votes

Plus intelligente, elle fonctionne sous Windows et sous Mac, dans les deux émulateurs.

1 votes

Je dois avoir une clé courte pour cela. Une idée ?

2 votes

Je l'ai mis en mode avion, et j'ai toujours une connexion internet.

16voto

naveed ahmad Points 1005

Il existe de nombreuses méthodes. J'en explique deux ici.

  1. Il suffit de cliquer sur le bouton F8 pour activer ou désactiver la connexion Internet .
  2. Il suffit de lancer votre émulateur, de maintenir le bouton d'alimentation enfoncé, puis de sélectionner :

Mode avion désactivé

Cela déconnectera votre émulateur d'Internet. Si vous voulez vous reconnecter, il suffit de maintenir le bouton d'alimentation enfoncé et de sélectionner :

Mode avion activé

Et la connexion Internet de votre émulateur commencera à fonctionner !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X