将Flurry AppCircle广告与AdMob中介集成

时间:2013-04-23 22:16:35

标签: iphone ios admob ads flurry

我目前正在使用AdMob Mediation在我的iPhone应用程序中集成Flurry AppCircle Ads;我正在为iOS 6开发。

我一直关注来自here的Flurry的集成指令,但最后,该项目甚至没有编译。每个需要的框架都与AdMob Mediation的适配器链接在一起。

以下是引发的错误:

    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 Mediation会抛出错误请求广告时的运行时:

    -[GADObjectPrivate changeState:]: unrecognized selector sent to instance 0xc9cc000

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

您现在可能已经想到了这一点,但只有当主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。