是否有可能使用的是iOS SDK来检测LTE连接?(Is it possible to detect

2019-07-28 23:47发布

我使用的可达性API来检测我的当前连接,但我只能WIFI和3G之间进行区分。

我得到以下标志:

:LTE kSCNetworkReachabilityFlagsIsLocalAddress|kSCNetworkReachabilityFlagsIsWWAN|kSCNetworkReachabilityFlagsTransientConnection|kSCNetworkReachabilityFlagsReachable

WIFI: kSCNetworkReachabilityFlagsIsDirect|kSCNetworkReachabilityFlagsReachable

问题是,LTE返回相同的标志作为一款3G连接。 有什么方法来确定用户当前是否具有LTE或3G?

Answer 1:

由于iOS的7,你可以发现这一点,使用currentRadioAccessTechnology财产CTTelephonyNetworkInfo在CoreTelephony框架。

#import <CoreTelephony/CTTelephonyNetworkInfo.h>

CTTelephonyNetworkInfo *networkInfo = [CTTelephonyNetworkInfo new];

if ([networkInfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyLTE]) {
    // ...
}


Answer 2:

我不知道这是否隐藏核心电话API可以为您提供足够的信息让你判断要连接到LTE或更慢的技术。

CTRegistrationGetCurrentMaxAllowedDataRate();

这可能是值得尝试。

更多关于使用此API的私有: iPhone手机号码使用核心电话

不过,我读过您的应用程序将通过苹果,如果你使用的API私人被拒绝。



文章来源: Is it possible to detect LTE connection using iOS SDK?