Crash Detection via Crashlytics
At Skillz, we use Firebase Crashlytics for crash reporting. We recommend integrating Crashlytics with your game to identify bugs and crashes more efficiently.
This article will discuss how to integrate Crashlytics into your Skillz based game.
Fabric Shutting Down on May 4, 2020
Crashlytics was acquired by Google from Fabric last year. As a result, Fabric is being shut down on May 4, 2020. If you had previously integrated Crashlytics via Fabric, please follow the migration guide.
Before You Begin
Optional. Skillz can set up an email alias that will receive a notification when your app has been registered with Crashlytics, as well as one anytime a crash is detected. Please contact us.
iOS
Integrating Crashlytics into your XCode project is fairly straightforward. Simply follow the detailed instructions here. For Step 2: Add the Crashlytics SDK, please add the framework manually instead of via Cocoa Pods.
Android
Follow the instructions here to integrate Crashlytics into your Android Studio project.
Unity
Prerequisites
You will be using Unity Firebase 6.15.1 to integrate Crashlytics. Here's information on why this version is used.
Instructions
Please follow the official instructions.
The official instructions in the Firebase docs are targeted for the latest version of Unity Firebase. However, Skillz has been tested with Unity Firebase 5, which is an older version. As a result, there will be a few discrepancies.
Android
Under Step 4: Build or run your project, the Exports to an Android Studio project subsection instructs you to verify your project structure.
However, you do not need to verify that the files listed under the libs/
section. This is because Skillz requires that you patch your mainTemplate.gradle when resolving dependencies, rather than downloading the resulting JARs/AARs.
your-export-directory/
build/
build.gradle
...
Firebase/ <- FIREBASE FOR UNITY
gradle/
gradle.properties
gradlew.bat
libs/ <- DISREGARD
com.google.android.gms.play-services*
com.crashlytics.sdk.android*
com.google.firebase.firebase-*
io.fabric.sdk.android.fabric*
...
src/
Finally, the section titled Run the resolver (optional) is misleading. Running the Google Play Services resolver is mandatory.