0

有没有人能够在一个 iOS 二进制文件中编译和链接 Parse 和AdMob?我从 Parse 或 AdMob 收到链接器错误,具体取决于构建设置。

非常感谢您的帮助。

4

2 回答 2

3

AdMob 需要 -ObjC 链接器标志:“此标志使链接器加载库中定义了 Objective-C 类或类别的每个目标文件”。

Parse 已从其框架中删除了 Facebook SDK,该 SDK 在使用 AdMob 所需的 -ObjC 标志编译项目时生成链接器错误。

我不知道如何解决 AdMob 对 -ObjC 标志的依赖。我不是链接器专家。

Parse 推荐的解决方案是将 Facebook SDK 添加到您的项目中。如果您不打算使用 Facebook,我也不知道有什么解决方法。

Parse 在这里有一个支持讨论:https ://www.parse.com/questions/i-dont-want-to-use-facebook-in-my-app

更新:我尝试用AdMob 库替换-ObjC链接器标志。-forceload但是,我遇到了 AdMob 崩溃。这与缺少-ObjC链接器标志的情况相同。任何链接器专家都知道如何将 替换为-ObjC仅针对 AdMob 库的内容?

更新 2:升级到 XCode 6、iOS 8 和新版本的 adMob 后,我需要重新审视这个问题。我通过使用它来工作-force_load

-force_load $(SRCROOT)/.../GoogleMobileAdsSdkiOS/libGoogleAdMobAds.a

就我而言,我在项目源的子文件夹中安装了 adMob。只需将 ... 替换为 adMob SDK 的相对路径即可。

于 2013-08-09T15:05:59.713 回答
0

看起来像下面的标志解决了这个问题:

-force_load Libraries/GoogleAdMobAdsSdkiOS-6.8.0/libGoogleAdMobAds.a
于 2014-03-09T08:01:17.150 回答