我有一个使用Google移动广告SDK的现有iOS应用(我相信v 5.0.5)。我需要将其升级到DoubleClick支持的最新版本。但是,我收到了链接器错误。
我的步骤如下:
libGoogleAdMobAds.a
链接库具体错误是:
Undefined symbols for architecture i386:
"_CGSizeFromGADAdSize", referenced from
或
"_kGADAdSizeBanner", referenced from
我还缺少什么?
答案 0 :(得分:0)
也许您还需要-all_load链接器标志选项?根据这篇文章,它对于较新的ARM7目标已经过时了,但也许你有一个旧目标?
http://vntin.com/feeds.feedburner.com/blogspot/LTiVe
请参阅本节:“支持armv7s”
“如果您的目标是armv7s架构,则无需再将-all_load链接器标志添加到项目中。”
[更新]
您可以尝试使用nm命令验证lib * .a文件中的内容。
nm -U libGoogleAdMobAds.a | grep kGADAdSizeBanner
此外,单击日志导航器可能会提供一些其他信息。选择最后一个图标,然后选择左侧导航中的最后一次构建。
[更新2]
该网站上的某人也抱怨新API存在链接器问题。可能必须对您的代码进行细微更改。
http://www.monkeycoder.co.nz/Community/posts.php?topic=1246
Something has changed in the latest AdMob SDK. I get the same linker error. I can use an older version of the SDK and this all works fine. Anyone know what could have changed with Ad sizes? EDIT: Found the problem. There were some name changes to constants :) https://developers.google.com/mobile-ads-sdk/docs/ios/intermediate Change the GAD_ ad sizes with: kGADAdSizeBanner.size.width and kGADAdSizeBanner.size.height