web-dev-qa-db-ja.com

GoogleAnalytics 3.01をXCode 5にリンクできません(必要なアーキテクチャx86_64がありません)

(iOS7を対象とする)アプリを作成しましたが、送信前の最後のステップとしてGoogleアナリティクスを適用したいと考えています。私がしたこと:

  1. ダウンロードGA iOS 3.01の場合
  2. インポートされたコンテンツ/GoogleAnalytics/Library/のグループ「GoogleAnalytics」へ
  3. libGoogleAnalyticsServices.aをグループ「GoogleAnalytics」にインポートしました
  4. ビルドフェーズを追加し、ビルドフェーズlibGoogleAnalytics_debug.alibGoogleAnalyticsServices.aと交換しました
  5. コードブロック#include "GAI.h"-Prefix.pch-ファイルに追加しました。
  6. AppDelegate[GAI sharedInstance]を初期化します。

この投稿の下部にセットアップのスクリーンショットを添付しました。ビルドしようとすると(デバイスまたはシミュレーター、両方とも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
casparjespersen

あなたは何も悪いことをしていません。 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リリースで修正された皆さん、朗報です。

iOS向けGoogleアナリティクスサービスSDK v3.03で64ビットのサポートが利用可能になりました。 ( ソース

8
Ali

最初のスクリーンショットでは、プロジェクトに2つのターゲットがあることがわかります。 libGoogleAnalyticsServices.aが両方のターゲットに追加されましたか?リンクされたフレームワークはターゲットごとに異なる可能性があるため、このように最も一般的なエラーです...また、プロジェクトからGAを削除してから、クリーン、ビルドフォルダーのクリーン、Xcodeの再起動およびGAの追加を再試行してください= )昨日、これは私を助けました=)

0
Petro Korienev