# Crashlytics-Integration

<Aside type="caution" icon="setting" title="Hilfe vom Entwicklungsteam benötigt">
 Sie benötigen Hilfe von Ihrem Entwicklungsteam, um die Integration einzurichten. Bitte teilen Sie diese Anleitung mit ihnen.
</Aside>

Vertrauen ist etwas, das man über die Zeit aufbauen und im Handumdrehen verlieren kann. Sobald Sie Menschen in Ihre App gebracht haben, möchten Sie eine langfristige Beziehung zu ihnen aufbauen, und App-Abstürze können zu einem Deal-Breaker werden.

Was wäre, wenn Sie die Chance hätten, auf eine sehr persönliche Weise „Es tut mir leid“ zu sagen? Zum Beispiel zeigen Ihre Statistiken, dass 30 % Ihrer Benutzer bei der neuesten Version einen Absturz erleben, und Sie müssen ihnen nur sagen, dass sie aktualisieren sollen, um eine Lösung bereitzustellen. Die anderen 70 % sind jedoch möglicherweise nicht erfreut, von möglichen Problemen mit der App zu hören, die sie so sehr lieben.

Hier kommen wir ins Spiel, um zu helfen. Die Integration von Crashlytics und Pushwoosh ist sehr einfach. Mit nur wenigen Zeilen Code können Sie nur diejenigen Benutzer ansprechen und benachrichtigen, die einen bestimmten Absturz in der App erlebt haben, ohne den Rest Ihrer Zielgruppe stören zu müssen.

Schauen wir uns an, wie es funktioniert.

## Crashlytics integrieren

Zunächst müssen wir [Crashlytics](https://firebase.google.com/docs/crashlytics) eine Kennung zuführen, die uns später hilft, den Benutzer gezielt anzusprechen.
Crashlytics stellt zu diesem Zweck die Methode **setUserIdentifier** bereit (Link zu [iOS](https://docs.fabric.io/ios/crashlytics/enhanced-reports.html#user-identifiers), Link zu [Android](https://docs.fabric.io/android/crashlytics/enhanced-reports.html#user-information)).

In unserem Fall müssen wir sie auf die Pushwoosh Hardware ID setzen. Wie Sie vielleicht wissen, ist die Pushwoosh Hardware ID unter iOS die _IDFV_ (oder _IDFA_, wenn Sie auf das _AdSupport.framework_ verlinken) und in den meisten Fällen unter Android die _Android Id_ oder die _Serial Number_.

Dieser Code macht es einfach:

<Tabs>
<TabItem label="Java">
```java
String userId = pushManager.getPushwooshHWID(this);
Crashlytics.setUserIdentifier(userId);
```
</TabItem>

<TabItem label="Objective-C">
```objective-c
NSString * userId = [[PushNotificationManager pushManager] getHWID];
[Crashlytics setUserIdentifier:userId];
```
</TabItem>
</Tabs>

Das ist alles! Jetzt sammeln Sie Benutzer-IDs mit Crashlytics.

## Herunterladen von Benutzer-IDs aus den Absturzberichten in Crashlytics

Bitte beachten Sie, dass es gemäß der Fabric-Dokumentation bis zu 24 Stunden dauern kann, bis die Schaltfläche „IDs exportieren“ im Absturzdetailbericht im Crashlytics-Dashboard erscheint.

<img src="/integrations-crashlytics-integration-1.webp" alt="Schaltfläche 'IDs exportieren' im Crashlytics-Absturzdetailbericht"/>

Ein Klick auf die Schaltfläche _IDs exportieren_ lädt die Datei _user-data.csv_ herunter.
Die Datei hat die folgende Struktur:

```javascript title="user-data.csv"
userId,email,name,mostRecentTimestamp,count
XXXXXXXXXXXXXXXX,test@example.com,John Snow,MAR 03 2016 01:22,1
YYYYYYYYYYYYYYYY,another@example.com,John Snow Jr,MAR 03 2016 01:11,1
```