我正在尝试在我的iSO应用程序中添加Google Analytics,并且我正在使用Google Analytics最新的SDKhttps://developers.google.com/analytics/devguides/collection/ios/v3/.
成功地将所有必需的标题和框架添加到我的项目中。但在运行我的应用程序时,我得到了低于错误
-
(null):"_OBJC_CLASS_$_GGLContext",从AppDelegate.o 中的OBJC类引用
-
(null):链接器命令失败,退出代码为1(使用-v查看调用)
以下是我在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_LASS_$_GIDSignIn)请告诉我缺了什么。提前谢谢。
"OPN [Debug]
目标覆盖OTHER_LDFLAGS
构建设置"。这是主要问题。在其他链接器标志的新行中添加$(继承的)后,解决了我的问题。
如果您像链接建议的那样使用pod安装库,请确保在运行pod安装时检查是否有任何错误。可能是您更改了生成设置中的OTHER_CFLAGS或OTHER_LDFLAGS,这可能会导致问题。如果是这种情况,您可能希望在这两个标志的新行中添加"$(herited)"。
看起来您没有链接到某个Google库;我想是分析。
尝试添加libGGLCore.a和libGGLAnalytics.a以将二进制与库链接
一个小错误,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
当我设置开发目标时,就发生了这种情况。生产目标运行良好,但开发不断带来这些错误。我的问题在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!
,错误就解决了。