FirebaseCrashlyticsを、Firebase Crash Reportingが有効になっているiOSアプリに統合しようとしています。ドキュメント here に従いましたが、カスタムビルドフェーズを実行するとビルドが常に失敗します。
"${PODS_ROOT}/Fabric/run"
Xcodeのエラーは次のとおりです。
エラー:ファブリック:構成の問題
ファブリックAPIキーが無効です。 Fabric実行スクリプトのビルドフェーズには、APIキーを含める必要があります:./Fabric.framework/run INSERT_YOUR_API_KEY INSERT_YOUR_BUILD_SECRET
Fabric APIキーを持っていないので、Firebaseライブラリがそれらのファブリックキーを処理する必要があると思います。私のプロジェクトにはInfo.plistがあり、Firebaseは完全に機能していますが、Fabricの実行フェーズを通過することはできません。これを修正する方法についてのヘルプは大歓迎です!
最後にそれを理解し、同じ問題に困惑しているかもしれない人のために投稿しました。
OSX Fabric.app経由でファブリックをインストールしようとした場合、Fabric初期化ビルドスクリプトが読み取ろうとしているInfo.plistにFabric APIキーが追加されます(推測)。
削除の後に、キー/パラメータを必要とせずに、スクリプトが機能するinfo.plistからFabricキーが形成されます。
Firebaseドキュメントには、これに関するスニペット警告を含める必要があります。
https://fabric.io/kits/ios/crashlytics/install のドキュメントに従い、Run Scriptを追加し、Info.plistを更新しましたが、それでも上記の問題が発生しました。
どうやら、誤って2回「新規実行スクリプトフェーズ」を追加したようです。不要な「スクリプトの実行」を削除した後、プロジェクトは正常にコンパイルされました。
Xcode 10.1 Fabric 1.7.5 Crashlytics 3.10.4
crashlyticsがプロジェクトに既にセットアップされている場合(移行の場合)、
"${PODS_ROOT}/Fabric/run"
、 の代わりに "${PODS_ROOT}/Fabric/run" key1 key2
ビルド段階でのスクリプトの実行)プロジェクトにcrashlyticsがまだセットアップされていない場合(firebase crashlyticsとの新たな統合を開始する場合)、単にドキュメントに従ってください。
Getting Started のドキュメントを注意深く守っていれば、いらいらするかもしれません。私を信じて。私はそれを共有しました。
今、私はあなたと共有できるものです。
以前にそのターゲット用のFabric RunScriptがあった場合は、それを削除して新しいものを作成し、GettingStarted instruction を適用し、$(INFOPLIST_PATH)
をGoogleService-Info.plist
に置き換えてください。
Info.plist
ファイルにFabric設定はもうないはずです。これは、<key>Fabric</key><dict>...</dict>
です。それでもまだあるなら、さよならを言って、その気持ちや顔を手放す時間です この問題 。
[Fabric] failed to download settings Error Domain=FABNetworkError Code=-5... blah blah blah
が表示され続ける場合は、最初にそのBuild Folder(shift + cmd + k
)を削除してください。次のビルドが機能する場合は、 force crashing アプリを試して、Firebaseのクラッシュログを確認してください。
これが私のスタックです:Xcode10.2.1 | ファブリック1.9 | Crashlytics3.12
私にとっての問題は、以前に古いファブリックを使用していたため、info.plistからキーを削除する必要があったことです。