Comment savoir si "les Données de Réseau Mobile" est activé ou désactivé (même lorsqu'il est connecté en WiFi)?

J'ai une application que je veux être en mesure d'utiliser pour obtenir un état de la connexion du rapport à partir d'une requête à distance.

Je veux savoir si le WiFi est connecté, et si l'accès aux données est activé sur le réseau mobile.

Si le WiFi passe hors de portée, je veux savoir si je peux compter sur le réseau de téléphonie mobile.

Le problème est que les données activé est toujours renvoyée en tant que vrai quand je suis connecté en WiFi, et je ne peux m'interroger correctement le réseau mobile lorsqu'il n'est pas connecté par WiFi.

toutes les réponses que j'ai vu suggèrent d'interrogation pour voir ce que la connexion actuelle est, mais je veux savoir si le réseau mobile est disponible si j'en ai besoin, même si je pourrais être connecté par WiFi à l'heure actuelle.

Est-il de toute façon de dire si des données de réseau mobile est activé sans interrogation pour voir si il est connecté?

MODIFIER

Donc quand il est connecté par WiFi Si j'ai accédez à paramètres, puis désélectionnez l'option "Données Activées" et puis, dans mon application, j'ai cela:

 boolean mob_avail = 
 conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isAvailable();

mob_avail est retourné en tant que "vrai", mais j'ai désactivé le Réseau Mobile de Données, donc je m'attends à être "faux"

Si je désactive le WiFi, il n'y a (à juste titre) pas de connexion que j'ai désactivé le réseau mobile de données.

alors, comment puis-je vérifier si des données de réseau mobile est activé que lorsque je suis connecté par WiFi?

Mise à JOUR

J'ai pris un coup d'oeil à getAllNetworkInfo() comme suggéré dans les commentaires par ss1271

J'ai sorti l'info renvoyée sur le réseau de téléphonie mobile sous 3 conditions suivantes

Désactiver WiFi - Mobile de Données sur

WiFi Sur Mobile des Données

WiFi Sur Mobile des Données sur

et a obtenu les résultats suivants:

Avec le WiFi DÉSACTIVÉ:

mobile[HSUPA], etat: CONNECTÉ ou CONNECTÉ, la raison: inconnu, extra:
internet, itinérance: false, le basculement: false, isAvailable: true,
featureId: -1, userDefault: faux

Avec WiFi /Mobile HORS

NetworkInfo: type: mobile[HSUPA], etat: DÉCONNECTÉ/DÉCONNECTÉ,
raison: connectionDisabled, extra: (aucun), itinérance: false,
basculement: false, isAvailable: true, featureId: -1, userDefault:
faux

Avec WiFi /Mobile Sur

NetworkInfo: type: mobile[HSPA], etat: DÉCONNECTÉ/DÉCONNECTÉ,
raison: connectionDisabled, extra: (aucun), itinérance: false,
basculement: false, isAvailable: true, featureId: -1, userDefault:
faux

Donc, comme vous pouvez le voir isAvailable retourné vrai à chaque fois, et de l'état seul a montré que Déconnecté lorsque le WiFi était en effet.

CLARIFICATION

Je suis PAS à la recherche pour voir si mon téléphone est actuellement connecté par le Réseau Mobile. Je SUIS de la tentative d'établir si oui ou non l'utilisateur a activé /désactivé l'accès aux Données sur un réseau mobile. Ils peuvent activer ou le désactiver en allant dans Paramètres -> sans Fil et Réseau Paramètres ->Paramètres Réseau Mobile -> Données activées

  • stackoverflow.com/questions/12686899/... même chose
  • avez-vous essayé: getAllNetworkInfo()?
  • Je ne me souviens pas la main, mais je vais essayer ça dès que je rentre à la maison et de mise à jour. Je présume qui retourne un tableau de connexions disponibles? Et que j'aurais besoin de parcourir le tableau?
  • oui, il retournera un tableau. Honnêtement, je n'ai pas l'utiliser avant, de sorte que vous devrez peut-être l'impression des journaux pour voir ce qu'il va obtenir pour vous. Et s'il vous plaît laissez-moi savoir la suite, bonne chance