iphone SDK détecte le réseau Wifi et Carrier
mon application accède à l'internet et j'ai juste envie de détecter s'il existe une connexion via wifi ou via transporteur réseau de données ou pas
apple a fait un exemple pour que "l'Accessibilité"
https://developer.apple.com/iphone/library/samplecode/Reachability/
je pense qu'il détecte le wifi et pas le réseau de l'opérateur
quelqu'un peut me dire, quel est le meilleur à faire pour détecter si il y a un lien ( n'importe quel type de connexion )
Apprécier ur aider!
source d'informationauteur Mina Mikhael
Vous devez vous connecter pour publier un commentaire.
Que l'échantillon est exactement ce dont vous avez besoin.
Oeil à l'Accessibilité.m. il va vous dire si vous avez une connexion, et puis vous dire quel type de connexion dont vous disposez.
L'Accessibilité exemple est peut-être trop si vous voulez juste pour détecter si oui ou non vous êtes connecté, et quel type de connexion que vous utilisez si vous êtes connecté. En effet, l'exemple contient également de code montrant comment la configuration et l'utilisation de rappels que vous aviser des changements d'état.
Pour un extrait de code source vous dire exactement si vous êtes connecté ou pas, et quel type de connexion que vous utilisez, vous pouvez prendre un coup d'oeil à ma réponse à une question similaire, posté ici.
Une fois que vous faites une demande pour toute ressource web, l'iPhone utilise une connexion, il trouve, il utilise le wifi ( comme une priorité plus élevée ), et si le wifi n'est pas connecté, il utilise le réseau de l'opérateur.
Il n'y a pas de paramètres de code c'est la prévention de réseau de transport.
Tout ce que vous avez à faire:
Ces techniques sont utiles, mais gardez à l'esprit que le dispositif du chemin d'accès à l'Internet pourrait se composer de différents types de connexions. Par exemple, un iPhone ou un iPod touch peut-être en utilisant un réseau WiFi pour se connecter à un hotspot mobile, qui, à son tour, a sa propre 3G connexion sans fil. Donc, il n'est pas sûr de supposer que la présence d'une connexion WiFi implique plus de bande passante que la 3G.
Accessibilité (Apple exemples de code, et d'autres personnes du même code, et le sous-jacent SCNetworkReachability vous indiquera qu'il n'y a pas d'accès à internet, ou que vous obtiendrez l'accès à internet via le WiFi, ou que vous obtiendrez l'accès à internet par le biais de données mobiles.
Si vous avez à la fois le WiFi et mobile des données disponibles, il vous dira "WiFi". Il n'y a aucun moyen de savoir que les données mobiles est disponible que lorsque vous avez WiFi. (Vous pouvez facilement trouver que les données mobiles est disponible lorsqu'il n'y a pas de WiFi). Vous ne pouvez pas savoir si le mode Avion est activé (ce qui serait différente de la WiFi et de données mobiles éteint).
WiFi disponible ne garantit pas qu'un téléchargement de l'utilisation de WiFi et pas de données mobiles. Vous pourriez lancer un téléchargement à la maison, laisser une minute plus tard, WiFi disparaît, et iOS seront heureux de continuer à télécharger via la 3G. Vous pouvez définir un indicateur dans le téléchargement de l'appel à interdire la 3G. Le code d'erreur sera -1009 = Pas d'accès à internet, aucune mention du fait que la 3G aurait été disponible.
À l'aide de CTTelephonyNetworkInfo vous pouvez trouver que vous êtes sur un appareil qui pourrait mobile de données (pas un iPod Touch ou iPad sans de données mobiles, et il y a une carte SIM dans l'appareil).