GoogleAnalytics-iOS-SDK en CocoaPods 0.36 con Swift

Alguien sabe ¿Cómo escribo Bridging Header for Swift con CocoaPods 0.36?

Probé de estas maneras.

(1)

#import <GoogleAnalytics-iOS-SDK/GAI.h> 

=> esto es cocoapods 0.35 estilo. no se pudo comstackr

(2)

 #import <GoogleAnalytics-iOS-SDK/GoogleAnalytics-iOS-SDK/GAI.h> 

=> no se pudo comstackr.

(3)

 #import "../Pods/GoogleAnalytics-iOS-SDK/GoogleAnalytics/Library/GAI.h" 

=> se puede cumplir. pero falla el enlace.

Logré include Google Analytics iOS SDK 3.10 a través de Cocoapods en mi proyecto Swift utilizando frameworks siguiendo estos pasos.

En el Podfile add (note the 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 

En la sección de import de AppDelegate , agregue:

 import GoogleAnalytics_iOS_SDK 

En la application didFinishLaunchingWithOptions método application didFinishLaunchingWithOptions agrega:

  GAI.shanetworkingInstance().trackUncaughtExceptions = true GAI.shanetworkingInstance().dispatchInterval = 20 GAI.shanetworkingInstance().logger.logLevel = GAILogLevel.Verbose GAI.shanetworkingInstance().trackerWithTrackingId("XXXX") GAI.shanetworkingInstance().defaultTracker.allowIDFACollection = true 

En este punto, su código no se comstackrá. Debe agregar otras dependencies manualmente a sus objectives, tanto la aplicación como las testings unitarias (como se indica en https://developers.google.com/analytics/devguides/collection/ios/v3/#headers ).

  • CoreData.framework
  • SystemConfiguration.framework
  • libz.dylib
  • libsqlite3.dylib
  • libGoogleAnalyticsServices.a

Tenga en count el libGoogleAnalyticsServices.a . Por alguna razón, Cocoapods no lo incluye cuando usa frameworks. Sin agregar este file, el linker fallará con el siguiente error:

 Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_GAI", referenced from: __TMaCSo3GAI in AppDelegate.o 

Para agregarlo, descargué el SDK manualmente (desde esta página: https://developers.google.com/analytics/devguides/collection/ios/resources ) y arrastré el libGoogleAnalyticsServices.a a mi proyecto asegurándome de que se agregó a ambos objectives y se marcó la casilla 'copyr'.

introduzca la descripción de la imagen aquí

Después de agregar el file y otras dependencies mencionadas, el proyecto se construye correctamente.

Parece como si Cocoapods no incluyera nada más que los files de encabezado del SDK de Google Analytics. Esta solución no es perfecta, pero evita la necesidad de agregar un encabezado de puente solo para Google Analytics.

Tuve un problema similar en CocoaPods 0.39.0.

$ (henetworkingado) en la configuration de compilation 'OTHER_LDFLAGS' lo resolvió.

https://stackoverflow.com/a/32004207/3129306

Tener el mismo problema actualmente …

Logré que el encabezado de puente funcione utilizando:

 #import <GoogleAnalytics_iOS_SDK/GAI.h> #import <GoogleAnalytics_iOS_SDK/GAITrackedViewController.h> #import <GoogleAnalytics_iOS_SDK/GAIDictionaryBuilder.h> #import <GoogleAnalytics_iOS_SDK/GAIFields.h> 

Desafortunadamente, mientras esto supera la compilation, no puedo usarla en mi proyecto. Voy a actualizar si encuentro más …

Cuando use un encabezado de puenteo, debería poder importar el SDK de iOS de Google Analytics utilizando la siguiente instrucción de import:

 #import <GoogleAnalytics-iOS-SDK/GAI.h> 

Si está utilizando pods como frameworks (al establecer 'use_frameworks!' En su podfile), no necesita el file de puenteo. En la class Swift simplemente importa con la siguiente statement:

 import GoogleAnalytics_iOS_SDK 

Si esto no funciona, creo que algo está mal en la configuration de tu proyecto. Para solucionarlo, necesitaré más información.