将Flurry AppCircle Ads与AdMob Mediation集成
问题描述:
我目前正在将我的iPhone应用程序中的Flurry AppCircle Ads与AdMob Mediation集成;我正在为iOS 6开发。将Flurry AppCircle Ads与AdMob Mediation集成
我一直在关注Flurry的here的集成指令,但最终项目甚至没有编译。每个必需的框架都与AdMob中介适配器一起链接。
下面是抛出错误:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_FlurryDataSenderBase", referenced from:
_OBJC_CLASS_$_AdLogManager in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_CLASS_$_FlurryDataSenderBlockInfo", referenced from:
objc-class-ref in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_CLASS_$_FlurryImpl", referenced from:
objc-class-ref in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_CLASS_$_FlurrySharedData", referenced from:
objc-class-ref in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_METACLASS_$_FlurryDataSenderBase", referenced from:
_OBJC_METACLASS_$_AdLogManager in libFlurryAds.a(libFlurryAds.a-i386-master.o)
ld: symbol(s) not found for architecture i386
现在我已经想通我自己能避免这些错误,应用程序可以建立,如果我从其它链接器标记删除-ObjC
标志,但这个标志是至关重要的,否则AdMob中介在请求一个广告在运行时抛出一个错误:
-[GADObjectPrivate changeState:]: unrecognized selector sent to instance 0xc9cc000
任何帮助将不胜感激。
答
您现在可能已经知道了这一点,但只有在主Flurry SDK和Flurry Ads SDK之间版本不匹配时才会看到此错误 - 具体而言,我添加了最新版本的Ads SDK(4.2.0 )添加到已经使用Flurry SDK的现有项目中,但忽略更新后者,因此它仍然在4.0.0版本上。
更新我的Flurry SDK副本导致连接问题消失。
继续阅读提示,我查看了4.2.0 libFlurry.a,并看到它定义了符号_OBJC_CLASS _ $ _ FlurryDataSenderBlockInfo和其余部分。所以,如果你正在链接,那么符号应该被定义。
所以我说,要么:
- 你不链接到的libFlurry.a可言;或
- 您正在链接的旧版本的libFlurry.a。
哇,谢谢!这与我所做的事情完全相同,因为这是一个新项目,我全部下载了Flurry SDK - 它必须包含不同版本的SDK(分析是4.0,广告是4.1),这是相当不可信的。 – 2013-05-06 15:32:52
Admob拒绝保存我的乱舞调解位置,您是否遇到过任何问题? – jjxtra 2013-09-26 20:42:59
谢谢亲爱的@tommy。你让我开心 – 2016-08-27 12:23:19