2017-07-19 95 views
0

取MobileOperator的名字,我曾嘗試通過iPhone和iPad模擬器使用下面的代碼XCode7.3.1.But這個回報(空)目標C通過模擬器

CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo alloc] init]; 
    CTCarrier *carrier = [networkInfo subscriberCellularProvider]; 

    // Get carrier name 
    carrierName  = [carrier carrierName]; 

誰能幫我找到獲取運營商的名稱通過模擬器的載體名稱,而無需更改XCode系統文件

+1

在模擬器中,您沒有連接到蜂窩網絡,因此完全可以使用'null'。您必須使用具有有效SIM卡的設備才能獲取此信息。 –

+0

我沒有任何蘋果ID生成設備應用程序,你可以建議我在桌面模擬器中製作載體信息? – sugansoft

回答

1

雖然我們在模擬器中獲取載波值,但它只返回null(因爲載波值我們需要SIM卡),所以我們必須手動設置info.plist中的載波值,我希望這個答案能幫助你

+0

如何設置info.plist?你能告訴它的價值嗎? – sugansoft

0

不,在模擬器中無法獲取carrierName。您需要帶SIM卡的設備。

0

您必須使用設備才能獲取此信息。根據文檔:

如果您爲運營商配置設備,然後刪除SIM卡, 此屬性保留運營商的名稱。如果設備從未爲運營商配置,則此 屬性的值爲零。

所以nil在模擬器中是一個預期的返回值。

1

在蘋果Docs

如果用戶交換用另一個提供商,您的應用程序運行時 設備的SIM卡。此課程還爲您提供了訪問CTCarrier對象的 ,其中包含有關用戶的家庭 蜂窩服務提供商的信息。

由於模擬器沒有蜂窩服務提供商carrier將爲零。

需要設備與SIM卡插入以獲得任何值。