【问题标题】:Integrating Flurry AppCircle Ads with AdMob Mediation将 Flurry AppCircle 广告与 AdMob 中介集成
【发布时间】:2013-04-23 22:16:34
【问题描述】:

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

我一直在遵循来自 here 的 Flurry 集成说明,但最后,该项目甚至没有编译。每个所需的框架都与 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

任何帮助将不胜感激。

【问题讨论】:

    标签: iphone ios admob ads flurry


    【解决方案1】:

    您现在可能已经想通了,但我只有在主 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)。
    • Admob 拒绝保存我的 Flurry 中介展示位置,您有遇到任何问题吗?
    • 谢谢你亲爱的@tommy。你让我开心
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-26
    • 2021-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多