func application(application: UIApplication,didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // Override point for customization after application launch. var configureError:NSError? GGLContext.sharedInstance().configureWithError(&configureError) assert(configureError == nil,"Error configuring Google services: \(configureError)") // Optional: configure GAI options. let gai = GAI.sharedInstance() gai.trackUncaughtExceptions = true // report uncaught exceptions return true }
AppDelegate.swift(如Google)中只能使用标准的UIKit,无法将其他内容导入.
我已经通过了许多教程和其他SO问题,都无济于事.我想我有一些小事情我失踪了,但找不到.
我做了什么
我的项目中有.h文件,以及libGoogleAnalyticsServices.a,libsqlite3.0.tbd,libz.tbd,libsqlite3.tbd(所有这些都链接到库以及CoreData和SystemConfiguration).
您可以在这里查看所有这些文件的布局:
和这里:
我创建了-Bridging-Header.h,并在其中包含这些.h导入.
#import "GAI.h" #import "GAIDictionaryBuilder.h" #import "GAIEcommerceFields.h" #import "GAIEcommerceProduct.h" #import "GAIEcommerceProductAction.h" #import "GAIEcommercePromotion.h" #import "GAIFields.h" #import "GAILogger.h" #import "GAITrackedViewController.h" #import "GAITracker.h"
-Bridging-Header.h在构建设置中链接,我没有收到错误.这是我在研究过程中发现的主要解决方案,在这种情况下并没有帮助我.
我已经尝试从头开始重新开始两次CocoaPods和没有(我开始之前我的项目的副本),我每次收到相同的错误.
任何帮助肯定会被赞赏.提前致谢.
解决方法
所有尝试都有几个问题.
> Cocoapods没有正确安装.我重新安装,然后更好地导入正确的文件.
>手动执行,如上所述,不是最好的选择.
> Cocoapods从我的项目的新副本重新安装并重新开始,我能够将Google导入到我的AppDelegate.swift中.
那些可能在同一条船上结束的人的要点:
请确保为您的-Bridging-Header.h添加正确的目录.您可以在项目 – 构建设置 – Swift编译器代码生成中找到此.使用它来轻松定位您的头文件$(SWIFT_MODULE_NAME)-Bridging-Header.h
>在您的-Bridging-Header.h中,不要#import< Google / Analytics.h>而是单独导入文件.以下是可导入文件的图像.
>如有疑问,请重新安装Cocoapods
>不要相信Google教程提供最有效的指导,并利用这个主题的许多SO帖子.
我真的希望这有助于有人不要像我一样在问题上花费10个小时.