プロジェクトにAdMobを追加していますが、次のエラーが発生します。
アーキテクチャi386の未定義のシンボル:
"_OBJC_CLASS_$_EKEvent", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
"_OBJC_CLASS_$_EKEventEditViewController", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
私が追加しました:
StoreKit
AudioToolbox
MessageUI
SystemConfiguration
CoreGraphics
AdSupport
また、-ObjCリンクフラグも使用します。
何が問題ですか?
ありがとう!
Google Admob SDK 6.11から6.12にアップグレードしたところ、同じエラーがポップアップしました。
プロジェクトナビゲーターで、上部のプロジェクトプロパティをクリックし、正しいターゲットが選択されていることを確認します。 [ビルドフェーズ]タブに移動し、[バイナリをライブラリにリンク]までスクロールします。 EventKit.frameworkとEventKitUI.frameworkの両方をこのリストに追加します。
いつものように、プロジェクトをクリーンアップしてビルドします。エラーはなくなるはずです。
これらのライブラリをすべて追加したことを確認してください
私にはこの問題があり、MessageUI.frameworkがありませんでした。
これは、AdMobに含める必要があるフレームワークの最新リストです(2016年7月)。
AdSupport.framework,
EventKit.framework,
EventKitUI.framework,
CoreTelephony.framework,
StoreKit.framework,
MessageUI.framework
この追加のEvenKitフレームワークを解決します。 SdkiOS 6.12では、これは私のエラーを解決するために必要です。
2017年6月5日
Google Mobile Ads SDKバージョン7.20.0の場合、次のフレームワークが必要です。