【问题标题】:How can i find programmatically iPhone device connected 3G network or Wifi in iOS7如何在 iOS7 中以编程方式找到连接 3G 网络或 Wifi 的 iPhone 设备
【发布时间】:2014-06-06 19:55:16
【问题描述】:

您好,我需要确定 iPhone 互联网连接的是 3G 还是 2G 还是 WIFI 网络 任何建议

谢谢

斯拉万

【问题讨论】:

  • 为什么要否决我的问题请澄清我的疑问...?
  • 请提供任何示例代码或任何对我有帮助的链接...
  • 请参考 Ben Groot 对此问题的回答 stackoverflow.com/questions/11049660/…。并且它的 Core Telephony 框架不是 CFNetworking

标签: ios objective-c ios7 wifi 3g-network


【解决方案1】:

从此链接下载适用于 iOS 的可达性类:- https://github.com/tonymillion/Reachability

1)在您的项目中添加 Reachability.h &.m,确保您通过添加标志 -fno-objc-arc 使其与 ARC 兼容

2)现在,检查视图控制器中的连接类型

  Reachability *reachability = [Reachability reachabilityForInternetConnection];
    [reachability startNotifier];

    NetworkStatus status = [reachability currentReachabilityStatus];

    if(status == NotReachable) 
    {
        //No internet
    }
    else if (status == ReachableViaWiFi)
    {
        //WiFi
    }
    else if (status == ReachableViaWWAN) 
    {
        //3G
    }

【讨论】:

  • 谢谢,但是当用户通过 3G 或 Wifi 网络连接到我的应用程序时,我需要显示警报,如果互联网连接不可用,则显示警报,请检查您的网络连接
【解决方案2】:

您可以使用Reachability library written by tonymillion。 如果你不想使用 ARC,还有 Apple Reachability 库。

【讨论】:

    【解决方案3】:

    还可以看看

    您将看到 CTTelephonyNetworkInfo 上公开了 currentRadioAccessTechnology 属性。

    CTTelephonyNetworkInfo *netInfo = [[CTTelephonyNetworkInfo alloc] init];
    NSLog(@"Radio access technology:\n%@",
           netInfo.currentRadioAccessTechnology);
    

    您可以通过以下方式订阅更改:

    [NSNotificationCenter.defaultCenter
        addObserverForName:CTRadioAccessTechnologyDidChangeNotification
                    object:nil
                     queue:nil
                usingBlock:^(NSNotification __unused *notification) {
                    CTTelephonyNetworkInfo *current =
                        [[CTTelephonyNetworkInfo alloc] init];
                    NSLog(@"Updated Radio access technology:\n%@",
                           current.currentRadioAccessTechnology);
                }];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-30
      • 1970-01-01
      • 2023-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-23
      相关资源
      最近更新 更多