我正在将Admob应用到我的iphone应用中。它适用于iOS 4.0的模拟器(带有目标SDK 3.0),这表明我已经正确地遵循了http://code.google.com/mobile/ads/docs/ios/fundamentals.html的初学者教程。但是,当尝试在具有iOS 4.3.1的设备上运行时,我收到2个链接器错误:
ld:警告:忽略文件 /Users/home/Documents/iPhoneDocs/Admobs/googleadmobadssdkios/GoogleAdMobAdsSDK/libGoogleAdMobAds.a, 文件是为不支持的文件格式而构建的,而不是 被链接的体系结构(armv7)体系结构的未定义符号 armv7:“_ OBJC_CLASS _ $ _ GADRequest”,引自: RootViewController.o中的objc-class-ref“_OBJC_CLASS _ $ _ GADBannerView”,引自: RootViewController.o中的objc-class-ref ld:未找到架构armv7的符号collect2:ld返回1退出状态
这是什么意思,我该如何解决? 我不明白的一件事是它引用的文件是有效的,但我希望它引用我的项目目录中的文件。
答案 0 :(得分:12)
您需要将libGoogleAdMobAds.a添加到框架中。将 libGoogleAdMobAds.a 拖到将二进制文件链接到库。检查以下图片
答案 1 :(得分:6)
对于那些在尝试通过CocoaPods使用AdMob时出现此错误的人,答案是将libGoogleAdMobAds.a库包含在Pod中(特别是Pods-AdMob)。似乎没有自动添加。
编辑:更多细节 - 你需要进入Pods项目,Build Phases,选择Ad Mob库,然后在与Libraries的二进制文件中按+按钮,选择Add Other ...,然后导航到Pod目录和其中的Google Ad Mob目录,然后添加libGoogleAdMobAds.a文件。
答案 2 :(得分:1)
当我尝试在我的项目上实施AdMob时,它发生在我身上。我正在使用Xcode 6,构建目标iOS 6.0。在尝试修复它之后。我发现它遗失了:
-lGoogleAdMobAds
在其他链接器标志中。
所以步骤是:
希望问题解决。