Подтвердить что ты не робот

Библиотека IOS Google Analytics

Когда я добавляю библиотеку Google Analytics, у меня есть это предупреждение

Undefined symbols for architecture armv7:
  "_OBJC_CLASS_$_NSAttributeDescription", referenced from:
      objc-class-ref in libGoogleAnalytics.a(GAICoreDataUtil.o)
      objc-class-ref in libGoogleAnalytics_debug.a(GAICoreDataUtil.o)
  "_OBJC_CLASS_$_NSFetchRequest", referenced from:
      objc-class-ref in libGoogleAnalytics.a(GAIDataStore.o)
      objc-class-ref in libGoogleAnalytics_debug.a(GAIDataStore.o)
  "_NSSQLiteErrorDomain", referenced from:
      l003 in libGoogleAnalytics.a(GAIDataStore.o)

Пожалуйста, помогите мне

4b9b3361

Ответ 1

Добавьте libGoogleAnalytics.a в целевую настройку [Build phases]-[Link Binary with Libraries]. Также проверьте, добавлены ли libsqlite3.0dylib (где хранятся данные отслеживания GA) и CFNetwork.framework там, где они требуются для Google Analytics/iOS (version 2.0 beta 3).

P.S. Для Google Analytics/iOS version 3.0 CoreData framework требуется вместо этого.

Ответ 2

У меня была такая же проблема на NSAttributeDescription. В документации эта функция от CoreData.framework, поэтому я добавил эту фреймворк и больше ошибок в этой проблеме.

Ответ 3

Проблема, связанная с SDK Google Analytics для миграции iOS v2.

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

Проблема:

У меня есть мой предыдущий (1.5.1) SDK, установленный в отдельной папке "SDK/GoogleAnalytics SDK. На переносе v2 я поместил новые файлы в " SDK/GoogleAnalytics SDK v2". После выполнения всех инструкций о миграции (с сайта Google) (и, в частности, это было просто удаление предыдущих ссылок на файлы из первой папки и добавление новых из нового), я начал получать следующую ошибку сообщение на компиляции:

Undefined символы для архитектуры armv7: "_OBJC_CLASS _ $_ GAI", ссылка:       objc-class-ref в AppDelegate.o ld: символ (-ы) не найден для архитектуры armv7 clang: ошибка: команда компоновщика не удалась с кодом выхода 1 (используйте -v, чтобы увидеть вызов)

Я пошел по первым страницам googling (и stackoverflowing), и самым популярным решением было "установить свойство Build active architecture only" на " YES" "(мои активные архитектуры -" armv7 armv7s"). Но, что НЕ ПОМОГИТЕ вообще.

Решение:

Однако произошло чудо. Я заметил, что существует старый каталог. SDK SDK/GoogleAnalytics SDK был указан в ссылках компоновщика. Итак, после этого каталога, удаляющего (поскольку я не знаю, где список каталогов существует в настройках), все начиналось скомпилировать и работать как шарм (также устанавливая "Только строить активную архитектуру", ДА 'для меня не было необходимости).

Ответ 4

Добавить -lGoogleAnalyticsServices в настройках сборки → Другие флаги компоновщика

Ответ 5

У меня были подобные ошибки, как указано выше, на самом деле больше (SDK 2.0 beta 4). После добавления библиотеки/заголовков Analytics связь с этими двумя структурами решила проблемы:

CoreData.framework и SystemConfiguration.framework

Ответ 6

Я последовал за этим учебником. В нем говорится добавить

#import "GAI.h"
#import "GAIFields.h"

в файл NameofTheProject-Prefix.pch.

И дополнительно к CoreData.framework и SystemConfiguration.framework добавить libz.dylib Он решил все проблемы.

Ответ 7

У меня возникла эта проблема, потому что я не добавил файл libGoogleAnalytics_debug.a. Проблема только что решена, так как я добавил этот файл и снова построил проект.

Ответ 8

У меня была проблема с ODD. По какой-то причине libGoogleAnalytics.a находился в Ресурсах копирования, когда он должен был находиться в Link Binary With Libraries

Надеюсь, это поможет кому-то.

Ответ 9

У вас была такая же проблема после перехода на SDK 2.0 beta 4. Решено, удалив старый путь библиотеки GA из Настройки моей сборки > Пути поиска библиотеки, как указано Adri.

Ответ 10

Я следил за всеми предложениями, и я все еще получал сообщение об ошибке XCODE 5.1.1.

Для меня ошибка была в целевом > Build Setting > Architecture > Architectures.

Я заменил значение на ARCHS_STANDARD_32_BIT, и ошибка исчезла.

Возможно, библиотека libGoogleAnalytics lib не была скомпилирована для 64 архитектуры BIT.

Надеюсь, это поможет кому-то. Или получите последнюю библиотеку, которая скомпилирована для 64 бит.

Ответ 11

При использовании Cocoapods убедитесь, что Другие флаги компоновщика имеют только флаг $(inherited) и удаляют любые дочерние архитектуры.

Для путей поиска каркаса и путей поиска библиотеки также установлен только флаг $(inherited).

Внутри файла моста заголовка введите #import <Google/Analytics.h>