web-dev-qa-db-fra.com

Impossible de lier GoogleAnalytics 3.01 avec XCode 5 (architecture requise manquante x86_64)

J'ai construit mon application (destinée à iOS7) et souhaite maintenant appliquer Google Analytics à la dernière étape avant la soumission. Ce que j'ai fait:

  1. Téléchargé GA pour iOS 3.01
  2. Contenu importé de /GoogleAnalytics/Library/ dans le groupe "GoogleAnalytics"
  3. libGoogleAnalyticsServices.a importé dans le groupe "GoogleAnalytics"
  4. Ajouté Phases de construction et phase de construction permutée libGoogleAnalytics_debug.a avec libGoogleAnalyticsServices.a
  5. Ajout du bloc de code #include "GAI.h" à mon fichier -Prefix.pch-.
  6. Initialisez le [GAI sharedInstance] dans ma AppDelegate.

J'ai joint des captures d'écran de la configuration au bas de cet article . Lorsque j'essaie de créer (un appareil ou un simulateur, les deux 32 bits), j'obtiens les erreurs de l'éditeur de liens suivantes:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_GAI", referenced from:
      objc-class-ref in FTVAppDelegate.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Comment résoudre ce problème?

MISE À JOUR 1

J'ai aussi l'avertissement

ld: warning: ignoring file .../libGoogleAnalyticsServices.a, missing required architecture x86_64 in file .../libGoogleAnalyticsServices.a (3 slices)
ld: warning: ignoring file .../SDWebImage.framework/SDWebImage, missing required architecture x86_64 in file .../SDWebImage.framework/SDWebImage (3 slices)

MISE À JOUR 2

Cette erreur ne survient que lors de la construction pour 64 bits. J'avais accidentellement réglé "Construire uniquement pour les architectures actives" sur NON, alors que cela devenait OUI, je pouvais construire à nouveau. Cela signifie que l'application ne fonctionne pas maintenant sur l'iPhone 5S - ce qui pose toujours un problème.

46
c.jespersen

Vous ne faites rien de mal. Je suis à peu près sûr que Google n'a pas encore fourni de version arm64 de leur libGoogleAnalyticsServices.a, ce qui est vraiment ennuyeux ... cela fait des semaines que la publication de Xcode 5GM est publique.

Pour l'instant, je suppose que vous ne construisez que pour armv7, armv7s ou supprimez Google Analytics jusqu'à ce qu'ils se sortent de la tête. 

UDATE: Enfin corrigé https://developers.google.com/analytics/devguides/collection/ios/resources

70
Ryan Romanchuk

Sélectionnez cette option dans la section Architecture de "Paramètres de construction" et votre code fonctionnera sur l'iPhone 5S. J'ai eu le même problème.

Build Settings

13
pabloverd

Bonne nouvelle pour tout le monde, corrigée par la version 3.03:

La prise en charge 64 bits est désormais disponible dans la v3.03 de Google Analytics Services SDK pour iOS. ( La source )

8
Ali

Je vois sur la première capture d'écran que votre projet a 2 cibles . Êtes-vous sûr que libGoogleAnalyticsServices.a a été ajouté aux deux cibles? __. Essayez également de supprimer GA du projet, puis de nettoyer, puis de nettoyer le dossier de construction, puis de relancer Xcode et d'ajouter à nouveau GA =). Hier, cela m'a aidé =)

0
Petro Korienev