问题
In my bridging header, I infinitely get "<Google/Analytics.h> not found"
I followed Google's own tutorial: https://developers.google.com/analytics/devguides/collection/ios/v3/?ver=swift
I've tried the 'pod GoogleAnalytics' methods people have posted.
I've tried all of the suggestions people have posted in other threads.
Is there something else I need to change in the "build settings" ... or does 'pod install' do everything?
Bridging Header:
Build Settings:
Podfile:
回答1:
Swift 4.0 and xcode 9.0.1 finally I resolved.
For me after 2 days I resolved.. Don't follow Google's old documentation says #import <Google/Analytics.h>
- Go to Terminal type
pod init
- Reopen project as workspace obvious after pod workspace is created, open podfile. write
pod 'GoogleAnalytics'
in your pod file beforetarget 'GoogleAnalytics' do
- Go back to Terminal
pod install
you will find frameworksGAI.h
and other files will be there under pods folder - Create
Header.h
file to your root. Don't add#import <Google/Analytics.h>
instead import following individually in bridging header file
e.g. in bridging header file remove #import <Google/Analytics.h>
#import "GAI.h"
#import "GAITracker.h"
#import "GAIFields.h"
#import "GAIDictionaryBuilder.h"
Point your bridge under Build Settings for target Swift Compiler - General -> Objective-C Bridging Header. write
Header.h
of your bridging file nameAdd code from google for swift to
didFinishLaunchingWithOptions
Don't forget to replace your tracking id from Google Analytics pageguard let gai = GAI.sharedInstance() else { assert(false, "Google Analytics not configured correctly") } gai.tracker(withTrackingId: "YOUR_TRACKING_ID") // Optional: automatically report uncaught exceptions. gai.trackUncaughtExceptions = true // Optional: set Logger to VERBOSE for debug information. // Remove before app release. gai.logger.logLevel = .verbose;
Tada.... Run your project...
回答2:
Found some help here (by Matthew Bradshaw): Use of unresolved identifier GGLContext and GAI
Seems that cocoapods incorrectly installed, or set the build settings incorrectly (or something strange).
Following his advice, I started from scratch, pod install'd, created the bridging header and imported each individual file (and not <Google/Analytics.h>), then pointed build settings at the bridging header!
Voila, the bridging header is no longer complaining about not being able to find files! Nice!
来源:https://stackoverflow.com/questions/41992697/how-to-use-google-analytics-for-ios-via-cocoapods