Firebase Crashlytics setup on iOS?
Finally figured it out, posting for anyone that might be baffled by the same problem.
If you've tried to install fabric via the OSX Fabric.app, or you were using Fabric Crashlytics in the past, then it will have added your Fabric API key to your Info.plist
, which the Fabric initialization build script is trying to read (I guess).
After deleting the Fabric keys form the Info.plist
the script works, without the need of any keys/params.
The Firebase docs should include a snippet warning on this.
If you follow closely the Getting Started documentation, you might be in for some frustrations. Trust me. I had my share of that.
Now here's what I can share with you.
If you previously had Fabric RunScript for that Target, then it's best if you delete that and create a new one, apply the GettingStarted instruction, and replace the
$(INFOPLIST_PATH)
withGoogleService-Info.plist
.There should be no Fabric configuration on your
Info.plist
file anymore. It's this thing:<key>Fabric</key><dict>...</dict>
. If you still have that, time to say goodbye and let go of those feelings or face this issue.- If you keep seeing this in your Xcode console,
[Fabric] failed to download settings Error Domain=FABNetworkError Code=-5... blah blah blah
, then go clean that Build Folder first (shift + cmd + k
).
If your next build works, try force crashing your app and check out the crash logs on Firebase.
Here's my stack: Xcode 10.2.1 | Fabric 1.9 | Crashlytics 3.12
The issue for me was I was using the old Fabric before and I had to remove the key from my info.plist
I followed the https://fabric.io/kits/ios/crashlytics/install documentation and added the Run Script and updated Info.plist but still got the above issue.
Apparently, I had accidentally added twice 'New Run Script Phase'. After removing the unnecessary 'Run Script's the project compiled successfully.
Xcode 10.1 Fabric 1.7.5 Crashlytics 3.10.4
Documentation
-
if crashlytics is already set up in your project (in case of migration),
- Remove the fabric key from Info.plist (need to remove the dictionary and the key for Fabric)
- Follow the
documentation.(just need to use
"${PODS_ROOT}/Fabric/run"
, instead of"${PODS_ROOT}/Fabric/run" key1 key2
in the Run script under build phase)
if crashlytics is not setup in your project already(starting a fresh integration with firebase crashlytics), simply follow the documentation.