架构armv7的未定义符号:" _OBJC_CLASS _ $ _ GGLContext",引用自:AppDelegate.o中的objc-class-ref

时间:2015-06-29 06:10:37

标签: ios google-analytics xcode6 cocoapods

我正在尝试在我的iSO应用中添加Google Analytics,而我正在使用Google Analytics最新的SDK https://developers.google.com/analytics/devguides/collection/ios/v3/

成功地为项目添加了所有必需的标题和框架。但是在运行我的应用程序时,我遇到了错误

  1. (null):" _OBJC_CLASS _ $ _ GGLContext",引自:AppDelegate.o中的objc-class-ref

  2. (null):链接器命令失败,退出代码为1(使用-v查看调用)

  3. 以下是我在AppDelegate.m文件中写的代码

    // Configure tracker from GoogleService-Info.plist.
    NSError *configureError;
    [[GGLContext sharedInstance] configureWithError:&configureError];
    NSAssert(!configureError, @"Error configuring Google services: %@", configureError);
    
    // Optional: configure GAI options.
    GAI *gai = [GAI sharedInstance];
    gai.trackUncaughtExceptions = YES;  // report uncaught exceptions
    gai.logger.logLevel = kGAILogLevelVerbose;  // remove before app release
    

    还包括(_OBJC_CLASS _ $ _ GIDSignInButton和_OBJC_CLASS _ $ _ GIDSignIn) 请告诉我缺少的东西。提前谢谢。

6 个答案:

答案 0 :(得分:46)

OPN [Debug]目标会覆盖OTHER_LDFLAGS构建设置”。这是主要问题。在其他链接器标志的新行中添加$(inherited)后解决了我的问题。

答案 1 :(得分:8)

如果您使用pod来安装链接建议的库,请确保在运行pod安装时检查是否存在任何错误。可能是您在构建设置中更改了OTHER_CFLAGS或OTHER_LDFLAGS,这可能会导致问题。 如果是这种情况你可能想要添加" $(继承)"在这两面旗帜的新线上。

答案 2 :(得分:2)

看起来你没有链接其中一个Google libraries;我猜分析。

答案 3 :(得分:2)

尝试添加libGGLCore.a和libGGLAnalytics.a以将Binary与Libraries链接

答案 4 :(得分:0)

一个小错误,Google SDK无效。我是CocoaPods的新手,我不知道,你必须在你的目标中添加谷歌分析窗格。像这样:

# Uncomment this line to define a global platform for your project
platform :ios, '8.0'
# Uncomment this line if you're using Swift
# use_frameworks!   

target 'NAME_OF_THE_TARGET' do
  pod 'Google/Analytics'
end

答案 5 :(得分:0)

当我设置开发目标时,这发生在我身上。生产目标工作正常,但开发不断带来这些错误。我的问题出在pod文件中。起初:

target 'NAME-OF-TARGET' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!

# Pods for MAIN-TARGET
pod 'GoogleSignIn'
pod 'Firebase/Core'
pod 'Firebase/Database'

target 'DEV TARGET' do
    inherit! :search_paths           <----------
    # Pods for dev-target
    pod 'GoogleSignIn'
    pod 'Firebase/Core'
    pod 'Firebase/Database'
end

我指出箭头是问题。 我将其从inherit! :search_paths更改为use_frameworks!,错误已完成。