18

Google アナリティクス ライブラリを追加すると、この警告が表示されます

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)

私を助けてください

4

11 に答える 11

41

libGoogleAnalytics.a目標設定に追加します[Build phases]-[Link Binary with Libraries]。また、 libsqlite3.0dylib(GA が追跡データを保存する場所) とCFNetwork.frameworkが に必要なため、そこに追加されているかどうかを確認しGoogle Analytics/iOS (version 2.0 beta 3)ます。

Analytics/iOS version 3.0 CoreData framework代わりにPS For Googleが必要です。

于 2012-10-29T15:10:18.017 に答える
13

私はに同じ問題を抱えていましたNSAttributeDescription。ドキュメントでは、この関数はからCoreData.frameworkのものであるため、このフレームワークを追加しましたが、この問題に関するエラーはありません。

于 2012-11-07T12:39:33.263 に答える
9

Google アナリティクス SDK for iOS v2 移行に関連する問題。

正確な問題がないため、どのトピックに書き込むべきかわかりません--私は自分でぶつかって解決しました--見つけました(これが最も近いようです(新しいものを開く必要があるかどうかわかりません)) )、しかし誰かに役立つかもしれません。

問題:

以前の (1.5.1) SDK を"SDKs/GoogleAnalytics SDK"の別のフォルダーにインストールしました。v2 移行では、新しいファイルを"SDKs/GoogleAnalytics SDK v2"に配置しました。移行に関するすべての指示 (Google サイトから) に従った後 (詳細には、最初のフォルダーからファイルへの以前の参照を削除し、新しいフォルダーから新しいファイルを追加するだけでした)、次のエラーが発生し始めました。コンパイル時のメッセージ:

アーキテクチャarmv7の未定義シンボル: "_OBJC_CLASS_$_GAI"、参照元: AppDelegate.o ld の objc-class-ref: アーキテクチャ armv7 のシンボルが見つかりませんでした。clang: エラー: リンカー コマンドが終了コード 1 で失敗しました (使用 -v呼び出しを見るために)

私はグーグル(およびスタックオーバーフロー)の最初のページを調べましたが、提案された最も一般的な解決策は「「ビルドアクティブアーキテクチャのみ」プロパティを「はい」に設定することでした(私のアクティブなアーキテクチャは「armv7 armv7s」です)。しかし、それはまったく役に立ちませんでした。

解決:

しかし、奇跡が起こりました。古いディレクトリ「SDKs/GoogleAnalytics SDK」がリンカー パスにリストされていることに気付きました。そのため、そのディレクトリを削除した後(ディレクトリのリストが設定のどこに存在するのかわからないため)、すべてがコンパイルされ、魅力のように機能し始めました(「アクティブなアーキテクチャのみをビルドする」を「YES」に設定する必要もありませんでした)。

于 2012-11-17T20:04:45.430 に答える
7

ビルド設定に -lGoogleAnalyticsServices を追加 -> その他のリンカー フラグ

于 2013-09-24T19:02:21.280 に答える
6

上記と同様のエラーがありましたが、実際にはもっと多くありました (SDK 2.0 ベータ 4)。Analytics ライブラリ/ヘッダーを追加した後、これら 2 つのフレームワークとリンクすることで問題が解決しました。

CoreData.frameworkSystemConfiguration.framework

于 2013-03-04T18:25:23.367 に答える
4

このチュートリアルに従いました。追加すると言う

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

NameofTheProject-Prefix.pchファイルに。

さらに、CoreData.frameworkすべて の問題を解決しましたSystemConfiguration.frameworklibz.dylib

于 2014-02-20T18:03:54.060 に答える
3

libGoogleAnalytics_debug.aファイルを追加しなかったため、この問題が発生していました。このファイルを追加してプロジェクトを再度ビルドすると、問題は解決しました。

于 2013-04-10T11:11:17.203 に答える
0

Cocoapodsを使用している場合は、その他のリンカー フラグにフラグのみが含まれていることを確認し、子アーキテクチャ$(inherited)フラグを削除します。

フレームワーク検索パスライブラリ検索パスについても$(inherited)フラグのみを設定します。

ヘッダーブリッジファイル内に#import <Google/Analytics.h>

于 2016-07-13T10:48:47.073 に答える
0

SDK 2.0 ベータ 4 に移行した後、同様の問題が発生しました。Adri が指摘したように、[マイ ビルド設定] > [ライブラリ検索パス]から古い GA ライブラリ パスを削除することで解決しました。

于 2013-06-25T18:23:42.547 に答える
0

すべての提案に従いましたが、まだエラーが発生していましたXCODE 5.1.1

私にとって、エラーはターゲット>ビルド設定>アーキテクチャ>アーキテクチャにありました。

値を に置き換えたところARCHS_STANDARD_32_BIT、エラーはなくなりました。

liblibGoogleAnalyticsが 64 ビット アーキテクチャ用にコンパイルされていない可能性があります。

これが誰かを助けることを願っています。または、64 ビット用にコンパイルされた最新の lib を入手してください。

于 2014-05-14T19:37:35.303 に答える