使用Swift的CocoaPods 0.36上的GoogleAnalytics-iOS-SDK
任何人都知道如何使用CocoaPods 0.36为Swift编写桥接头?
我试过这些方法. (1) #import <GoogleAnalytics-iOS-SDK/GAI.h> =>这是cocoapods 0.35风格.无法编译. (2) #import <GoogleAnalytics-iOS-SDK/GoogleAnalytics-iOS-SDK/GAI.h> =>无法编译. (3) #import "../Pods/GoogleAnalytics-iOS-SDK/GoogleAnalytics/Library/GAI.h" =>它可以被遵守.但链接失败.
我设法通过Cocoapods将Google Analytics iOS SDK 3.10成功地包含在我的Swift项目中,并按照这些步骤使用框架.
在Podfile上添加(注意use_frameworks!): source 'https://github.com/CocoaPods/Specs.git' platform :ios,'8.0' use_frameworks! target "XXXX" do pod 'GoogleAnalytics-iOS-SDK','~> 3.10' end target "XXXXTests" do pod 'GoogleAnalytics-iOS-SDK','~> 3.10' end 在AppDelegate导入部分添加: import GoogleAnalytics_iOS_SDK 在应用程序didFinishLaunchingWithOptions方法中添加: GAI.sharedInstance().trackUncaughtExceptions = true GAI.sharedInstance().dispatchInterval = 20 GAI.sharedInstance().logger.logLevel = GAILogLevel.Verbose GAI.sharedInstance().trackerWithTrackingId("XXXX") GAI.sharedInstance().defaultTracker.allowIDFACollection = true 此时,您的代码将无法编译.您需要手动将其他依赖项添加到目标,包括应用程序和单元测试(如https://developers.google.com/analytics/devguides/collection/ios/v3/#headers所示). > CoreData.framework 请注意libGoogleAnalyticsServices.a.出于某种原因,Cocoapods在使用框架时不包括此内容.如果不添加此文件,链接器将失败并显示以下错误: Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_GAI",referenced from: __TMaCSo3GAI in AppDelegate.o 为了添加它,我手动下载了SDK(从此页面:https://developers.google.com/analytics/devguides/collection/ios/resources)并将libGoogleAnalyticsServices.a拖到我的项目中,确保它已添加到两个目标并选中了“复制”复选框. 添加文件和其他提到的依赖项后,项目正确构建. 好像Cocoapods只包含Google Analytics SDK中的标题文件.此解决方案并不完美,但无需为Google Analytics添加桥接标头. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |