web-dev-qa-db-fra.com

Google analytics 3.08 IOS classe idfa manquante, ne collectera pas idfa

J'ai téléchargé google analytics et j'ai suivi leurs instructions pour implémenter analytics dans l'application. Mais quoi que j'aie essayé, j'obtiens ce journal en xcode: idfa class missing, won't collect idfa.

Screenshot for console message

Je l'ai donc recherché sur Google et j'ai découvert que Apple rejettera les applications qui comportent cet avertissement. J'ai également découvert que Google a résolu ce problème avec la version 3.03c et que nous n'avons pas à importer la bibliothèque qui utilise J'ai également exécuté leur exemple et j'obtiens le même journal dans leur exemple.

Donc ma question est, est-ce que Apple approuvera ma demande, comment puis-je la corriger?

enter image description here

enter image description here

36
nik

J'ai le même problème. Il semble que 3.08 lib est lié à iAd.Framework Voici ce que j'ai fait - je suis revenu à la version 3.03c. Vous pouvez le télécharger ici " https://dl.google.com/googleanalyticsservices/GoogleAnalyticsServicesiOS_3.03c.Zip

La meilleure façon est d'utiliser Cocopoads pour gérer les bibliothèques avec pod 'GoogleAnalytics-iOS-SDK', '3.0.3c'

20
Kostiantyn Koval

J'utilise 3.0.9. J'ai pu supprimer l'avertissement en créant un lien dans le libAdIdAccess.a bibliothèque fournie avec le GoogleAnalytics SDK et le AdSupport.framework.

18
GrindItOut

J'utilise la version 3.0.9 et pour me débarrasser de cet avertissement, j'ai dû lier la bibliothèque libAdIdAccess.a et le AdSupport.framework manuellement.

Pour ce faire, ajoutez simplement les lignes suivantes dans vos paramètres de génération Other Linker Flags (OTHER_LDFLAGS):

-framework AdSupport

-force_load "$ {PODS_ROOT} /GoogleAnalytics-iOS-SDK/libAdIdAccess.a"

Ça devrait ressembler à ça: enter image description here

Lien: Documentation officielle

17
Kevin Delord

Juste pour compléter les autres réponses. J'utilise le SDK Google Analytics v3.09 que j'ai intégré sans CocoaPod dans Xcode 6. Pour supprimer l'avertissement, j'ai simplement ajouté la bibliothèque statique libAdIdAccess.a à mon projet par glisser-déposer.

AdSupport.framework était déjà inclus dans mon projet.

Remarque: je ne sais pas pourquoi, mais parfois, Xcode est confondu avec le chemin ajoutant une nouvelle bibliothèque de cette façon ce qui entraîne une erreur de lien. Dans ce cas, modifiez simplement le chemin dans l'option Chemin de recherche de la bibliothèque à partir des paramètres de construction: remplacez $(PROJECT_DIR)/YourDirectory/GoogleAnalyticsLibrary-3.09 par "$(SRCROOT)/YourDirectory/GoogleAnalyticsLibrary-3.09"

2
Lisarien

J'utilise la v3.08 et j'obtiens le même avertissement. Je viens de soumettre mon application et elle a été approuvée par Apple. Je pense qu'ils sont conscients du problème mais ne l'ont pas appliqué dans mon cas. Vous pouvez soumettre votre application et prendre le temps entre la soumission et la décision de supprimer 3.08 et revenir à 3.03c au cas où ils la rejetteraient.

1
fsb

GoogleAnalytics-iOS-SDK est déconseillé au profit de GoogleAnalytics

il suffit donc de remplacer la ligne de votre fichier pod pour

 pod 'GoogleAnalytics'
1
Chris

Tout ce que vous avez à faire est d'ajouter libAdIdAccess.a à votre projet. Il fait partie de GoogleAnalyticsServicesiOS_3.09 livraison.

0

pod 'GoogleIDFASupport'

Cela permettra aux cocoapodes d'obtenir ce dont vous avez besoin. Je n'ai pas non plus dû en faire la force_load.

Installation de GoogleIDFASupport (3.14.0) à l'aide de GoogleTagManager (3.15.0)

0
Alberto Lopez

J'utilise 3.0.3c et n'utilise pas IDFA ,.

Howerer, "idfa class missing" est toujours enregistré.

GAI.sharedInstance().logger.logLevel = GAILogLevel.Verbose

J'ai résolu le problème en essayant de supprimer la ligne ci-dessus.

0
Ted Liu