我们可以使用iOS检测SIM是预付费还是后付费?

时间:2016-10-12 04:15:34

标签: ios networking sim-card

iOS编程中是否有任何方法,功能或属性可以识别SIM是预付费还是后付费?

我们能否以任何方式使用网络信息来区分前后?

- (NSDictionary *)fetchSSIDInformation { 
       NSArray *interfaceNames = CFBridgingRelease(CNCopySupportedInterfaces());
       NSLog(@"%s: Supported interfaces: %@", func, interfaceNames);
       NSDictionary *SSIDInfo; 
       for (NSString *interfaceName in interfaceNames)
          { 
            SSIDInfo = CFBridgingRelease( CNCopyCurrentNetworkInfo((bridge CFStringRef)interfaceName)); 
            NSLog(@"%s: %@ => %@", __func, interfaceName, SSIDInfo); 
            BOOL isNotEmpty = (SSIDInfo.count > 0); 
            if (isNotEmpty) { break; } 
          }

      return SSIDInfo;
}

2 个答案:

答案 0 :(得分:1)

不,SIM卡或设备可用的任何网络信息都不会显示用户类型。 SIM拥有的唯一重要信息是国际移动用户识别码(IMSI),它唯一地识别运营商的SIM卡。

然后,网络运营商将在运营商侧(存储在HLR中)关联“订户类型”(后付费,预付费,融合,混合),这将影响计费的处理方式。

通常不会公开从HLR公开这些信息,但操作员我有一个可以公开此类查询的服务提供商的门户网站。

答案 1 :(得分:0)

我认为你不能,Apple不公开任何关于SIM卡的信息。您可以这样做,但Apple不会在Appstore中考虑您的应用。阅读Apple Developer Document