it-swarm.com.ru

Невозможно связать GoogleAnalytics 3.01 с XCode 5 (отсутствует необходимая архитектура x86_64)

Я создал свое приложение (для iOS7) и теперь хочу применить Google Analytics в качестве последнего шага перед отправкой. Что я сделал:

  1. Загруженный GA для iOS 3.01
  2. Импортированный контент из /GoogleAnalytics/Library/ в группу "GoogleAnalytics"
  3. Импортировано libGoogleAnalyticsServices.a в группу "GoogleAnalytics"
  4. Добавлены Фазы сборки и поменялся фазой сборки libGoogleAnalytics_debug.a с libGoogleAnalyticsServices.a
  5. Добавлен блок кода #include "GAI.h" в мой файл -Prefix.pch-.
  6. Инициализируйте [GAI sharedInstance] в моей AppDelegate.

Я приложил скриншоты установки в нижней части этого поста . Когда я пытаюсь собрать (либо устройство, либо симулятор, оба 32-битные), я получаю следующие ошибки компоновщика:

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)

Как мне это решить?

ОБНОВЛЕНИЕ 1

Я тоже получаю предупреждение

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)

ОБНОВЛЕНИЕ 2

Эта ошибка возникает только при сборке для 64 бит. Я случайно установил для параметра «Только сборка для активных архитектур» значение «НЕТ», а когда оно изменилось на «ДА», я смог собрать еще раз. Это означает, что приложение теперь не работает на iPhone 5S - что по-прежнему является проблемой.

46
c.jespersen

Вы не делаете ничего плохого. Я почти уверен, что Google еще не предоставил версию libGoogleAnalyticsServices.a для arm64, которая действительно раздражает ... прошло несколько недель с момента выхода Xcode 5GM для публики.

На данный момент, я предполагаю, что собираю только для armv7, armv7s или удаляю аналитику Google, пока они не вытащили голову из штанов. 

UDATE: Окончательно исправлено https://developers.google.com/analytics/devguides/collection/ios/resources

70
Ryan Romanchuk

Выберите эту опцию в разделе «Архитектура» в «Настройках сборки», и ваш код будет работать на iPhone 5S, у меня возникла такая же проблема.

Build Settings

13
pabloverd

Хорошая новость для всех, исправленная в релизе 3.03:

64-разрядная поддержка теперь доступна в версии 3.03 Google Analytics Сервисы SDK для iOS. ( Источник )

8
Ali

На первом снимке экрана я вижу, что у вашего проекта есть 2 цели ... Вы уверены, что libGoogleAnalyticsServices.a добавлен к обеим целям? Связанные платформы могут отличаться от цели к цели, поэтому в этом случае это самая распространенная ошибка ... Также попробуйте удалить GA из проекта, затем Очистить, затем Очистить папку сборки, затем перезапустить Xcode и снова добавить GA =) Вчера это помогло мне =)

0
Petro Korienev