2014-05-19 2 views
1

Je suis en train de développer une application iOS qui a besoin de savoir si le réseau cellulaire est mesuré pour économiser le coût, avons-nous une API dans iOS pour obtenir l'information?iOS isActiveNetworkMetered api

Dans Android, l'API est http://developer.android.com/reference/android/net/ConnectivityManager.html#isActiveNetworkMetered().

Renvoie si le réseau de données actuellement actif est mesuré. Un réseau est classé comme mesuré lorsque l'utilisateur est sensible à une utilisation importante de données sur cette connexion en raison de coûts monétaires, de limitations de données ou de problèmes de batterie/performance. Vous devriez vérifier ceci avant d'effectuer de gros transferts de données, et avertir l'utilisateur ou retarder l'opération jusqu'à ce qu'un autre réseau soit disponible.

Merci, James

Répondre

0

Il n'y a pas de contrôle pour vérifier exactement comme réseau est mesurée ou non, mais vous pouvez vérifier si la connexion réseau via un cellulaire ou wifi.

Vous pouvez utiliser la classe de fournir Reachability par Apple ici

mettre en œuvre ensuite les éléments suivants pour savoir si vous avez connecté sur cellulaire

- (BOOL)networkCheckForCellular 
{ 
    Reachability *wifiReach = [Reachability reachabilityForInternetConnection]; 
    NetworkStatus netStatus = [wifiReach currentReachabilityStatus]; 

    switch (netStatus) 
    { 
     case NotReachable: 
     { 
      NSLog(@"%@",@"NETWORKCHECK: Not Connected");  
      return false; 
      break; 
     } 
     case ReachableViaWiFi: 
     { 
      NSLog(@"%@",@"NETWORKCHECK: Connected Via WiFi");  
      return false; 
      break; 
     } 
     case ReachableViaWWAN: 
     { 
      NSLog(@"%@",@"NETWORKCHECK: Connected Via WWAN"); 
      return true; 
      break; 
     } 
    } 
    return false; 
} 
+0

cette solution ne résout pas le problème @iPrabu. Quelqu'un at-il rencontré ce problème? –