将Google Analytics添加到iOS App时出现问题

时间:2012-03-23 07:12:59

标签: ios ios5 google-analytics

当我在我的应用中实施Google Analytics时,使用此演练: http://code.google.com/mobile/articles/analytics_end_to_end.html

添加了libGoogleAnalytics.a CFNetwork和libsqlite3.0.dylib框架后,将GANTracker.h添加到我的AppDelegate.m中

我收到此错误:

Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_GANTracker", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

并且应用程序甚至不会编译。我的应用程序针对iOS 5.0

我很困惑。任何建议或工作都将受到高度赞赏。

6 个答案:

答案 0 :(得分:29)

我在发表评论后确实找到了答案。

在“Project Navigator”中单击您的项目,然后在“Targets”下单击您的项目。然后,您需要单击“构建阶段”。您需要确保将libsqlite3.0dylibCFNetwork.framework添加到“Link Binary WIth Libraries”中。我有这个,但我没有,你还需要将libGoogleAnalytics.a添加到同一区域。这解决了我的问题。

答案 1 :(得分:3)

就我而言,我为缺少的"_OBJC_CLASS_$_ASIdentifierManager"

添加了AdSupport.framework

答案 2 :(得分:2)

只需添加@Etch的答案。

Xcode 4.5掉落了armv6,只支持armv7。因此,您的lib可能是旧版本,您需要下载1.5.1版本。 Download here

问题:http://code.google.com/p/analytics-issues/issues/detail?id=232

答案 3 :(得分:1)

我正在开发基于Cordova的XCode项目。并且在弄清楚链接错误意味着什么之前就陷入了这些愚蠢的错误。所以这就是你做的..

首先,请确保按照https://github.com/phonegap/phonegap-plugins/tree/master/iOS/GoogleAnalytics提到的步骤操作。接下来确保你在通过Build Phases链接的项目下有以下文件(当你点击项目名称时就可以得到它...弄明白了)

  1. GANTracker.h
  2. libsqlite3.0.dylib
  3. libGoogleAnalytics.a
  4. CFNetwork.framework
  5. 还要确保您的Plugins文件夹包含2个文件,GoogleAnalyticsPlugin.h和GoogleAnalyticsPlugin.m。

    如果这无法解决您的错误。然后上帝帮助你。开始祈祷。或者尝试喷雾。看看是否有效。

答案 4 :(得分:1)

我有同样的问题。解决方案是将库移动到相同级别的.h文件。 但我不知道为什么会这样做。

答案 5 :(得分:0)

在您的目标下的构建阶段下的链接二进制文件库中

如果您添加了,请确保删除 libGoogleAnalytics_debug.a。并确保您拥有AdSupport.framework,当然还有libGoogleAnalyticsServices.a。