目标 C 通过模拟器获取移动运营商名称



我尝试通过 iPhone 和 ipad 模拟器与 XCode7.3.1 使用以下代码获取运营商名称。

CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier  = [networkInfo subscriberCellularProvider];
// Get carrier name
carrierName     = [carrier carrierName];

任何人都可以帮助我通过模拟器找到运营商名称,而无需更改XCode系统文件

当我们在模拟器中获取载体值时,它只返回 null(因为对于运营商值我们需要 simcard(,所以我们必须手动在 info.plist 中设置载体值,希望这个答案对您有所帮助

在 Apple Docs 中

如果用户将设备的 SIM 卡

与其他提供商的 SIM 卡交换, 在应用程序运行时。此类还允许您访问 CTCarrier 对象,其中包含有关用户主页的信息 蜂窝服务提供商。

由于模拟器没有蜂窝服务提供商carrier因此将为零。

您需要插入SIM卡的设备才能获得任何值。

不,在模拟器中无法获取运营商名称。您需要带SIM卡的设备。

您必须使用设备才能获取此信息。根据文档:

如果为运营商配置设备,然后删除 SIM 卡, 此属性保留运营商的名称。此值 如果设备从未配置为运营商,则属性为 nil。

因此,模拟器中的nil是预期的返回值。

最新更新