CTTelephonyNetworkInfo.serviceCurrentRadioAccessTechnology изменен при сбое iOS 14
if (@available(iOS 12.0, *)) {
CTTelephonyNetworkInfo * tmp = [[CTTelephonyNetworkInfo alloc] init];
if ([tmp respondsToSelector:@selector(serviceCurrentRadioAccessTechnology)]) {
[tmp.serviceCurrentRadioAccessTechnology enumerateKeysAndObjectsUsingBlock:^(NSString * _Nonnull key, NSString * _Nonnull obj, BOOL * _Nonnull stop) {
currentRadioAccessTechnology = obj;
*stop = YES;
}];
}
tmp = nil;
}
до iOS14 currentRadioAccessTechnology - это NSString, аiOS14 - currentRadioAccessTechnology - это NSArray
if (currentRadioAccessTechnology)
{
if ([currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyLTE])
{
returnValue = network_4g;
}
else if ([currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyEdge]
|| [currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyGPRS])
{
returnValue = network_2g;
}
else
{
returnValue = network_3g;
}
return returnValue;
}
if ([currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyLTE]) сбой информации об ошибке [__NSArrayM isEqualToString:]: нераспознанный селектор отправлен в экземпляр