DEV Community

Cover image for Integrating AppGallery Connect Crash in a Xamarin app for Android
Zachary Powell
Zachary Powell

Posted on

Integrating AppGallery Connect Crash in a Xamarin app for Android

Today we are going to take a look at how we can integrate the AppGallery Connect crash service into your Xamarin app.

But why might you want to do this? The AppGallery Connect Crash service provides a powerful yet lightweight solution to app crash problems. With the service, you can quickly detect, locate, and resolve app crashes (unexpected exits of apps), and have access to highly readable crash reports in real time, without the need to write any code.

The service is completely free to use and can be a great addition to your project!

Below is a simple app example you can follow along with to get a good idea of how you might use this service in your own app!

Preparing the Xamarin Environment and Configuring Your Project

Install the Xamarin environment.
You'll need to install Visual Studio first, and then select Mobile development with .NET in Visual Studio to install the Xamarin environment.

Image description

Create a project in AppGallery Connect and enable HUAWEI Analytics for your project.

Install the service SDK. Right-click your project and choose Manage NuGet Packages
Image description
Search for crash on the Browse tab. Click Xamarin.Android bindings for HMS Core - AgconnectCrash in the search results and install it.

Image description

Add the JSON file to the Assets directory
Image description

Next, implement LazyInputStream to read the agconnect-services.json file.
For details, please refer to Getting Started with Xamarin

Finally set a package name in Android Manifest.
Image description

Example Application

Lets start by creating a simple layout that has three buttons.

Image description

In the MainActivity.cs file, call * AGConnectCrash.Instance.TestIt* to trigger a crash, call AGConnectCrash.Instance.SetUserId to set a custom user ID, call AGConnectCrash.Instance.SetCustomKey to set the key and value for a custom key-value pair, call AGConnectCrash.Instance.Log to set the log level, and call AGConnectCrash.Instance.RecordException to record a non-fatal exception.

View the Crash Report

Tap MakeCrash, CatchException, and CustomReport in sequence, and check the report in AppGallery Connect.

Crash statistics:
Image description

Exceptions:
Image description

Debugging:
Image description

View custom key-value pairs:
Image description

View custom log level:
Image description

View custom user IDs:
Image description

For more information, please refer to:
Crash document for Android
Codelab of Crash for Xamarin.Android

Discussion (0)