16

I implemented Firebase Crashlytics in my iOS app. I followed all the steps in firebase documentation. I already ran crashlytics without the debugger by closing the app first and then re run the app so that crash reports can be sent. I even get this message

Crash upload submission succesful

I even added the Run script and set variable to "DWARF with DSYM"

"${PODS_ROOT}/Fabric/run"

I ready somewhere that if DSYM aren't uploaded you won't see your crashes even if they are uploaded successfully. So I went into my pods/Fabric/ and click on "run" CLI. It clearly says DSYM not uploaded because GoogleServiceInfo.plist wasn't found. Although it's there and yes it's included in my target as well as in my bundle.

enter image description here

Here is the screenshot. I have tried all possible steps to include GoogleService-Info.plist but still when I run manually it says this.

enter image description here

Any another thing that I can try ?

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
Moaz Khan
  • 1,272
  • 1
  • 13
  • 28
  • Are you sure its GoogleService-Info.plist not GoogleService-Info1.plist or GoogleService-Info2.plist or something else – Vikky Dec 22 '17 at 07:40
  • Yes rechecked it like 10 times already. – Moaz Khan Dec 22 '17 at 07:41
  • hi Moaz khan how did you resolve this issue. I am facing the same issue unable to find plist when i run manually. Its working in simulator when i created a ipa file and produce a test crash showing missing dysm – 08442 Jan 27 '19 at 07:51
  • Just read my answer add the test crash in the first view controller then wait for a while and the tests will start appearing – Moaz Khan Feb 13 '19 at 06:59

8 Answers8

36

Try this:

  1. Run your app from Xcode to install it on the simulator or your device
  2. Press the Stop button in Xcode to quit it
  3. Launch your app from the home screen to run it without the debugger
  4. Press the “Crash” button to trigger the crash
  5. Run the app again from Xcode so it can deliver the recorded crash to Crashlytics
  6. Within a few minutes, you should see the crash appear on your Firebase Crashlytics Console.

For reference:

Integrating Firebase and Crashlytics in iOS 

Lizesh Shakya
  • 2,482
  • 2
  • 18
  • 42
Piero Sifuentes
  • 490
  • 4
  • 8
  • hey, this is working on my case, but after set user details using sample codes are providing by fabric, new crashes are not showing in dashboard and there has warning with Missing dSYMs, why is that ? where is wrong – Sachintha Udara Jul 10 '19 at 17:15
  • @SachinthaUdara try this: Check if Xcode is producing debug symbol files: 1. Open your project in Xcode, and select the project file in the Xcode Navigator. 2. Select your main build target from the Select a project or target dropdown. 3. Open the target's Build Settings tab. 4. Click All near the top of the tab. 5. Search for "debug information format". 6. Set Debug Information Format to DWARF with dSYM File. If that doesn't work, you should add a run upload symbols script manually For reference: https://medium.com/swlh/firebase-crashlytics-full-guide-part2-52b35c3c79c8 – Piero Sifuentes Jul 13 '19 at 19:56
  • Thanks of your reply, Yes I have done dSYM selecting a part in early of configuration. I don`t know the real reason for it, but when I did the same thing in firebase it work calm. I think this is wrong with fabric SDK. – Sachintha Udara Jul 14 '19 at 09:05
  • OMG, I spent a day trying to figure this out and this is the only thing that worked! Thanks. – Azin Mehrnoosh Jun 05 '21 at 19:55
  • i was missing the step 5 -> it's important to relaunch the app with xcode and not from the home screen. thanks a lot ! – Jeremy Piednoel Jan 20 '22 at 15:45
  • Firebase Crashlytics is obsolete I think, It doesn't work anymore... Impossible to make it work – ΩlostA Oct 04 '22 at 12:27
12

I have tried serval things but below steps are worked for me

  1. Put FirebaseApp.configure() to first line of didFinishLaunchingWithOptions
  2. If you have both Firebase/Crashlytics and Crashlytics. Removed Crashlytics from pods and update it
  3. Check in Build Phases Run Script if you have entry fot "${PODS_ROOT}/FirebaseCrashlytics/run".
  4. If you're running app in debug mode make sure you have added -FIRDebugEnabled in Project's test scheme.
  5. Run the App From Home Screen(Don't run it from Xcode) and crash it on any button's Action.(you will find the crash in Firebase Console with in 5-10 mins)
Sahil
  • 9,096
  • 3
  • 25
  • 29
  • 1
    thanks man, I was trying to understand why activation does not occur, it turns out that you need to launch the application from the home screen, it's a shame that Google cannot write about this in its manual – Maxim Golovlev Feb 24 '21 at 20:28
  • 1
    I have `Crashlytics`, `Fabric` and `Firebase/Crashlytics` so it was confused. I removed all and keep only `Firebase/Crashlytics` and it worked. – Niraj Jun 07 '21 at 12:04
  • 1
    Thanks a lot! This part did it for me: 5. Run the App From Home Screen(Don't run it from Xcode) and crash it on any button's Action.(you will find the crash in Firebase Console with in 5-10 mins) – Koen Dec 12 '21 at 17:24
6

To someone still struggling with the issue here is what resolved the issue for me.

  1. I deleted the GoogleService-Info.plist and added it again.

  2. I tried the crash on my welcome screen rather than in one of the screens of my tab bar controller as I believe from there it's unable to find GoogleServiceInfo.plist file so it worked.

Moaz Khan
  • 1,272
  • 1
  • 13
  • 28
  • 1
    m having the same issue but it still not get resolved by even deleting and re-adding GoogleService-Info.plist. Its' a bit frustrating now. – Srijan Kumar Jun 07 '18 at 06:08
  • 1
    Add a test crash in the first view controller of your app. After that it will start to show up. – Moaz Khan Jun 07 '18 at 07:10
5

After following all the steps as stated in the docs followed below steps:

  • Install app using xcode.
  • Quit the app.
  • Launch the app from home screen - This is important
  • Force a crash

They starting showing on the console.

Pranav Gupta
  • 741
  • 9
  • 10
0

I solving the same issue adding the FirebaseCraslytics pod to my Podfile:

...
pod 'FirebaseAnalytics'
pod 'FirebaseCrashlytics'

Then I added the following Run Script in the Build Phases:

enter image description here

Script:

"${PODS_ROOT}/FirebaseCrashlytics/run"

Input Files:

$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)
$(SRCROOT)/${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}

After that, I followed the Step 3: Force a test crash to finish setup and Crashlytics start to working.

pableiros
  • 14,932
  • 12
  • 99
  • 105
0

After following all the necessary steps: NOT running the app from Xcode, but from iPhone/simulator interface helped me detect the crash in Crashlytics dashboard.

Mumtaz Hussain
  • 925
  • 9
  • 23
0

For SwiftUI and Swift 5 paste below code to under of Buid Phases

Script:

"${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run"

enter image description here

yasin89
  • 103
  • 8
-4

When I have this issue, I do a manual install and yes first use the Fabric app to initialise the app into their system - https://fabric.io/kits/ios/crashlytics/manual-install

evanjmg
  • 3,465
  • 1
  • 14
  • 12