web-dev-qa-db-ja.com

iOS-_OBJC_CLASS _ $ _ CTTelephonyNetworkInfoが見つかりませんか?

次のコードを使用して、iPhoneに関するネットワーク情報を取得しています-

#import <CoreTelephony/CTTelephonyNetworkInfo.h>
#import <CoreTelephony/CTCarrier.h>


CTTelephonyNetworkInfo *netInfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [netInfo subscriberCellularProvider];
NSString *osVersion = [[UIDevice currentDevice] systemVersion];

しかし、エラーが発生します-

Undefined symbols for architecture armv7:
 "_OBJC_CLASS_$_CTTelephonyNetworkInfo", referenced from:
  objc-class-ref in MyClass.o
ld: symbol(s) not found for architecture armv7

クラスはiOSSDKの一部ではありませんか?私は何が間違っているのですか?

18
Suchi

CoreTelephony.framework の一部です。コードを機能させるには、 そのフレームワークを追加 する必要があります。

76
Joe

同様の問題がありました。鉱山は複数のターゲットを持つことに関連しており、1つのターゲットでのみ失敗します。

それを解決するには、CoreTelephone.frameworkをCtrlキーを押しながらクリックし、すべてのスキームに追加することを選択する必要がありました。

私が得た正確なエラーは、「アーキテクチャi386の未定義のシンボル:「_ OBJC_CLASS _ $ _CTTelephonyNetworkInfo」」でした。

4
Lasse