无法将GoogleAnalytics 3.01与XCode 5相关联(缺少必需的架构x86_64)

cas*_*sen 46 xcode cocoa-touch google-analytics linker-errors ios

我已经构建了我的应用程序(针对iOS7),现在想要在提交之前应用Google Analytics作为最后一步.我做了什么:

  1. 下载了适用于iOS 3.01的GA
  2. 进口量/GoogleAnalytics/Library/成组"Google分析"
  3. 导入libGoogleAnalyticsServices.a群组"GoogleAnalytics"
  4. 新增建设阶段和交换构建阶段libGoogleAnalytics_debug.alibGoogleAnalyticsServices.a
  5. 添加了代码块#include "GAI.h"到我的-Prefix.pch文件.
  6. 初始化[GAI sharedInstance]我的AppDelegate.

我在这篇文章的底部附上了设置的截图.当我尝试构建(设备或模拟器,32位)时,我得到以下链接器错误:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_GAI", referenced from:
      objc-class-ref in FTVAppDelegate.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

更新1

我也得到了警告

ld: warning: ignoring file .../libGoogleAnalyticsServices.a, missing required architecture x86_64 in file .../libGoogleAnalyticsServices.a (3 slices)
ld: warning: ignoring file .../SDWebImage.framework/SDWebImage, missing required architecture x86_64 in file .../SDWebImage.framework/SDWebImage (3 slices)
Run Code Online (Sandbox Code Playgroud)

更新2

仅在构建64位时才会出现此错误.我不小心将"Build only for active architecture"设置为NO,当这个改为YES时,我能够再次构建.这意味着该应用程序现在无法在iPhone 5S上运行 - 这仍然是一个问题.

Rya*_*huk 70

你没有做错任何事.我很确定谷歌还没有提供他们的libGoogleAnalyticsServices.a的arm64版本,这真的很烦人......自公众发布Xcode 5GM以来已经有好几周了.

就目前而言,我估计只能构建armv7,armv7s或删除谷歌分析,直到他们从他们的裤子出来.

UDATE:最后修复了https://developers.google.com/analytics/devguides/collection/ios/resources


小智 13

在"构建设置"的"体系结构"部分中选择此选项,您的代码将在iPhone 5S上运行,我遇到了同样的问题.

构建设置


Ali*_*Ali 8

每个好消息,由3.03版本修复:

现在,Google Analytics Services SDK for iOS的v3.03中提供了64位支持.(来源)