46

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

  1. 为 iOS 3.01 下载 GA
  2. 导入/GoogleAnalytics/Library/组“GoogleAnalytics”的内容
  3. 导入libGoogleAnalyticsServices.a组“GoogleAnalytics”
  4. 添加了构建阶段并交换libGoogleAnalytics_debug.a了构建阶段libGoogleAnalyticsServices.a
  5. #include "GAI.h"在我的-Prefix.pch-file 中添加了代码块。
  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)

我该如何解决这个问题?

更新 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)

更新 2

此错误仅在为 64 位构建时发生。我不小心将“仅用于活动架构的构建”设置为“否”,当它更改为“是”时,我能够再次构建。这意味着该应用程序现在无法在 iPhone 5S 上运行 - 这仍然是一个问题。

4

4 回答 4

70

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

目前,我想只为 armv7、armv7s 构建或删除谷歌分析,直到他们把头从裤子里拿出来。

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

于 2013-09-23T07:34:12.037 回答
13

在“构建设置”的架构部分中选择此选项,您的代码将在 iPhone 5S 上运行,我遇到了同样的问题。

构建设置

于 2013-12-25T17:31:50.640 回答
8

大家好消息,由 3.03 版本修复:

适用于 iOS 的 Google Analytics Services SDK v3.03 现在提供 64 位支持。(来源

于 2014-01-14T21:33:38.527 回答
0

我在第一个屏幕截图中看到您的项目有 2 个目标。您确定 libGoogleAnalyticsServices.a 添加到两个目标吗?链接的框架可能因目标而异,因此这是最常见的错误...也尝试从项目中删除 GA,然后清理,然后清理构建文件夹,然后重新启动 Xcode 并再次添加 GA =) 昨天这对我有帮助 =)

于 2013-09-21T15:28:53.353 回答