3rd Party Integrations

Thanks to Appsee's integration with Crashlytics, you can take your crash monitoring and troubleshooting, from novice to expert.

Understand exactly where, when, how, and why your app crashed.

Link Crashlytics crash reports with Appsee user recordings.

Sync up all of your crash reports for deeper insights

Replay a crash and see the exact flow of events that led to its occurrence.

Solve a crash within minutes thanks to Appsee's crash video recordings.

Reproduce crashes accurately and reduce crash rates.

Save countless dev hours and decrease the chance of the same crash reappearing.


Integration

Follow the steps bellow to enable this integration with Crashlytics.

Prerequisite

On iOS, if Crashlytics is integrated via Firebase, make sure to use SDK 2.4.4 (or above) and to initialize Appsee before initializing Firebase/Crashlytics.
If Crashlytics is still integrated via Fabric, make sure to integrate Appsee via Fabric as well.

To start using the integration you will need to enable the Crashlytics integration in your Appsee dashboard. Login to your Appsee account, and open the account management console. Select the "Integrations" tab and enable the Crashlytics integration.

iOS Implementation

Set your AppDelegate as the Appsee delegate and implement the appseeSessionStarted method:

@interface MyAppDelegate : UIResponder <AppseeDelegate>
...
[Appsee setDelegate:self];
...

-(void)appseeSessionStarted:(NSString *)sessionId videoRecorded:(BOOL)isVideoRecorded
{
  NSString *crashlyticsAppseeId = [Appsee generate3rdPartyID:@"Crashlytics" persistent:NO];
  [[Crashlytics sharedInstance] setObjectValue:[NSString
      stringWithFormat:@"https://dashboard.appsee.com/3rdparty/crashlytics/%@",
      crashlyticsAppseeId] forKey:@"AppseeSessionUrl"];
}

Android Implementation

In your App's Application class add the following code to the onCreate method:

Appsee.addAppseeListener(new AppseeListener()
{
  @Override
  public void onAppseeSessionStarted(AppseeSessionStartedInfo sessionInfo) {
    // Crashlytics (session-level integration)
    String crashlyticsAppseeId = Appsee.generate3rdPartyId("Crashlytics", false);
    Crashlytics.getInstance().core.setString("AppseeSessionUrl",
      "https://dashboard.appsee.com/3rdparty/crashlytics/" + crashlyticsAppseeId);
  }
  @Override
  public void onAppseeSessionStarting(AppseeSessionStartingInfo arg0) { // YOUR EXISTING CODE
  }
  @Override
  public void onAppseeSessionEnded(AppseeSessionEndInfo arg0) { // YOUR EXISTING CODE
  }
  @Override
  public void onAppseeScreenDetected(AppseeScreenInfo arg0) { // YOUR EXISTING CODE
  }
  @Override
  public void onAppseeSessionEnding(AppseeSessionEndingInfo arg0) { // YOUR EXISTING CODE
  }
  @Override
  public void onAppseeSessionEnded(AppseeSessionEndedInfo arg0) { // YOUR EXISTING CODE
  }
});
Appsee.start(!"YOUR_APPSEE_API_KEY");

Replaying Crashed Sessions

After completing the integration, every Crashlytics crash log will contain a custom property called "AppseeSessionUrl". Copying and pasting the session URL in your browser's window will open the session in the Appsee dashboard. If the session was video recorded you will be able to replay it in the Appsee dashboard.

If you have any questions regarding this integration, please contact us.