AdamE.Firebase.iOS.Crashlytics 12.9.0

AdamE.Firebase.iOS.Crashlytics

.NET bindings for Firebase Crashlytics on Apple platforms.

Scope

Native crash reporting, custom key, log, user identifier, and non-fatal error APIs exposed by the Firebase Apple SDK.

These packages are thin bindings over the native Firebase Apple SDK. The native documentation is the source of truth for product behavior, Firebase console setup, quotas, policy requirements, and feature workflows.

Native Documentation

Package

  • Package ID: AdamE.Firebase.iOS.Crashlytics
  • Managed namespace: Firebase.Crashlytics

Supported target frameworks include:

  • net9.0-ios
  • net10.0-ios
  • net9.0-maccatalyst
  • net10.0-maccatalyst

When multi-targeting, condition package references so they restore only for Apple targets:

<ItemGroup Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios' Or $([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'maccatalyst'">
  <PackageReference Include="AdamE.Firebase.iOS.Crashlytics" Version="x.y.z" />
</ItemGroup>

Installation

dotnet add package AdamE.Firebase.iOS.Crashlytics

Binding Notes

Use the official Firebase Apple docs for setup and usage. In .NET, call the equivalent APIs from the managed namespace listed above. Keep app-specific Firebase configuration, such as GoogleService-Info.plist, in the application project.

Most Firebase feature packages require AdamE.Firebase.iOS.Core and app startup should call Firebase.Core.App.Configure() before feature APIs are used. This is the .NET binding for native FirebaseApp.configure().

Crashlytics is native crash reporting, not a complete managed .NET exception-reporting replacement. On .NET 8 iOS projects, the top-level README includes an _ExportSymbolsExplicitly workaround for missing symbol/export issues.

There is no separate Crashlytics.Configure() call in the current binding surface. After Firebase is configured, use Firebase.Crashlytics.Crashlytics.SharedInstance for Crashlytics APIs such as Log(...), SetCustomValue(...), SetUserId(...), RecordError(...), and RecordExceptionModel(...).

Runtime collection controls are exposed through Crashlytics.SharedInstance.SetCrashlyticsCollectionEnabled(...), IsCrashlyticsCollectionEnabled, CheckForUnsentReports(...), SendUnsentReports(), and DeleteUnsentReports(). Use the native Crashlytics docs as the source of truth for the matching plist keys and consent behavior.

The NuGet package also ships MSBuild targets for Firebase dSYM symbol upload. Release app builds enable symbol upload by default. Set these properties in the consuming app project file, or in Directory.Build.targets for a shared repo policy.

To disable symbol upload:

<PropertyGroup>
  <FirebaseCrashlyticsUploadSymbolsEnabled>false</FirebaseCrashlyticsUploadSymbolsEnabled>
</PropertyGroup>

To keep upload enabled but fail the build if upload fails:

<PropertyGroup>
  <FirebaseCrashlyticsUploadSymbolsContinueOnError>false</FirebaseCrashlyticsUploadSymbolsContinueOnError>
</PropertyGroup>

For one-off builds, pass the same values as command-line MSBuild properties, such as dotnet build -c Release /p:FirebaseCrashlyticsUploadSymbolsEnabled=false. Prefer the app .csproj, Directory.Build.targets, or command-line properties over Directory.Build.props so the value is applied after NuGet package props set their defaults. The upload target expects the app bundle to contain GoogleService-Info.plist.

Version Alignment

Firebase Apple SDKs are packaged as native xcframeworks. Applications should pin package versions intentionally and keep all AdamE.Firebase.iOS.* packages on the same major/minor Firebase line.

Avoid mixing unrelated Firebase binding package sets or mismatched Firebase native SDK lines in one application. That can cause duplicate symbols, linker failures, runtime loading failures, or undefined native SDK behavior.

Repository

No packages depend on AdamE.Firebase.iOS.Crashlytics.

Version Downloads Last updated
12.10.0 0 04/21/2026
12.9.0 1 04/22/2026
12.8.0 0 04/20/2026
12.7.0 0 04/19/2026
12.6.0 0 04/18/2026
12.5.0.4 0 04/22/2026
12.5.0.3 0 12/24/2025
12.5.0.2 0 04/21/2026
12.5.0.1 0 12/14/2025
12.5.0 0 12/11/2025
12.4.0 0 10/30/2025
12.3.0 0 09/21/2025
12.2.0 1 04/21/2026
12.1.0 0 09/19/2025
12.0.0 1 04/22/2026
11.15.0 0 09/12/2025
11.14.0 0 09/07/2025
11.13.0 0 09/07/2025
11.12.0 0 09/06/2025
11.11.0 0 09/06/2025
11.10.0.2 0 08/31/2025
11.10.0.1 0 08/30/2025
11.10.0 0 04/02/2025
11.9.0 0 04/01/2025
11.8.0 0 02/04/2025
11.7.0 0 02/04/2025
11.6.0 0 04/22/2026
11.5.0 0 01/02/2025
11.4.0.1 0 12/26/2024
11.4.0 0 12/25/2024
11.3.0 0 12/19/2024
11.2.0 0 12/18/2024
11.1.0 0 12/17/2024
11.0.0 0 12/10/2024
10.29.0.3 0 12/09/2024
10.29.0.2 0 12/01/2024
10.29.0.1 0 10/18/2024
10.29.0 0 10/17/2024
10.28.1 0 10/16/2024
10.27.0 0 10/13/2024
10.25.0.1 0 10/12/2024
10.25.0 0 10/10/2024
10.24.0.3 0 10/10/2024
10.24.0.2 0 06/08/2024
10.24.0 0 04/30/2024
10.23.0 0 04/29/2024
10.22.0 0 04/29/2024
10.21.0 0 04/28/2024
10.20.0-alpha1 0 04/27/2024
10.19.0-alpha1 0 04/25/2024