Не удалось связать GoogleAnalytics 3.01 с XCode 5 (отсутствует требуемая архитектура x86_64)
Я создал свое приложение (предназначенное для iOS7) и теперь хочу применить Google Analytics как последний шаг перед отправкой. Что я сделал:
- Скачан GA для iOS 3.01
- Импортированный контент
/GoogleAnalytics/Library/
в группу "GoogleAnalytics"
- Импортировано
libGoogleAnalyticsServices.a
в группу "GoogleAnalytics"
- Добавлены Фазы сборки и изменена фаза сборки
libGoogleAnalytics_debug.a
с помощью libGoogleAnalyticsServices.a
- Добавлен код
#include "GAI.h"
в мой -Prefix.pch
файл.
- Инициализируйте
[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 бит. Я случайно установил "Build Only for active architecture" в "NO", когда это изменилось на "YES", я смог снова создать. Это означает, что приложение теперь НЕ работает на iPhone 5S - это все еще проблема.
Ответы
Ответ 1
Ты не делаешь ничего плохого. Я уверен, что Google еще не предоставил версию своего libGoogleAnalyticsServices.a в формате arm64. Это очень раздражает... Прошло несколько недель с момента публикации Xcode 5GM.
На данный момент я предполагаю, что вы создаете для armv7, armv7s или удаляете аналитику google, пока они не выйдут из своих штанов.
UDATE: Наконец, исправлено https://developers.google.com/analytics/devguides/collection/ios/resources
Ответ 2
Выберите этот параметр в разделе "Архитектура" в разделе "Настройки сборки", и ваш код будет работать на iPhone 5S, у меня были те же проблемы.
![Build Settings]()
Ответ 3
Хорошие новости, исправленные выпуском 3.03:
Поддержка 64-разрядных версий теперь доступна в версии 3.0 Google Analytics SDK служб для iOS. (Source)
Ответ 4
Я вижу на первом снимке экрана, что ваш проект имеет 2 цели.
Вы уверены, что libGoogleAnalyticsServices.a добавлен в обе цели?
Связанные рамки могут отличаться от целевых к целевым, поэтому это наиболее распространенная ошибка таким образом...
Также попробуйте удалить GA из проекта, затем очистить, затем очистить папку сборки, а затем перезапустить Xcode и добавить GA снова =) Вчера это помогло мне =)