2015-10-01 6 views
13

私はiOSアプリケーションにGoogleのサインインを統合しようとしています。私はGoogleの指示に従っています。

SafariService.frameworkも追加しました。

はまだ私はこのエラーを取得しています:

Undefined symbols for architecture arm64: 
    "_OBJC_CLASS_$_SFSafariViewController", referenced from: 
     objc-class-ref in GoogleSignIn(GIDSignIn.o) 

この問題を解決する方法は?

アイデア?

おかげ

SafariServicesフレームワークはiOS9でのみ利用可能ですので
+0

展開ターゲットは何ですか? SFSafariViewControllerはiOS 9でのみ利用できます。リンカのフラグ-ObjCも確認してください。 –

+0

'-ObjC'は、解決するよりも多くの問題を引き起こす可能性があるので、注意する必要があります。 – Droppy

+0

これらは私のリンカのフラグです: '-Objc -fobjc-arc -all_load' – iBug

答えて

17

私は同じ問題がありました。しかし、私の問題は私がSafariServicesフレームワークを含んでいないことでした。

私はそれを必要に応じて追加し、正常に動作しました。

あなたは次の設定があることを確認してください:

  • 無効BITE_CODE
  • 追加されたすべての必要なフレームワークを
  • リンカフラグ-ObjC(-ObjCない)
  • を追加しました必要なURLのタイプ
  • インポートしたG​​oogleSignIn.h
  • GoogleServices-Info.plistをターゲットにインポート
  • 私の構成では

私はデプロイメント・ターゲットとして7.0を使用してい

はそれがお役に立てば幸いです。 よろしくお願いします。

+1

@esefireは、「GoogleServices-Info.plistをあなたのターゲットにインポートしました」という点についての詳細な説明が必要です。 –

12

以上、それはあなたがそれよりも低いのiOSをデバイス上でこれを実行しようとしていることがありますか?もしそうなら、フレームワークを追加したときに必要に応じて追加した可能性はありますか?古いバージョンのiOSでは実行できません。オプションで設定してみてください。

enter image description here

+1

ありがとう。私はあなたのソリューションを試してみましたが、私は同じエラーが発生しています。アプリを実行しようとしているデバイスにiOSバージョン8.2があります。 – iBug

+0

それは私のために働いた! – davidrelgr