From b5de4e85d2b7c0b0544202458a6def7ee85faf70 Mon Sep 17 00:00:00 2001 From: Rick Foster <115846221+rick-bt@users.noreply.github.com> Date: Thu, 5 Dec 2024 08:32:33 -0800 Subject: [PATCH] Update Unreal Engine Android Setup (#3034) (#3035) Co-authored-by: melekr --- .../platform-integrations/unreal/setup.md | 33 ++++++++----------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/docs/error-reporting/platform-integrations/unreal/setup.md b/docs/error-reporting/platform-integrations/unreal/setup.md index 199d82b7b5..4f31858055 100644 --- a/docs/error-reporting/platform-integrations/unreal/setup.md +++ b/docs/error-reporting/platform-integrations/unreal/setup.md @@ -138,16 +138,7 @@ To configure the crash reporter for a packaged build: Integrate the [backtrace-android](https://github.com/backtrace-labs/backtrace-android) error reporting library with your Unreal Engine game for Android written in Java or Kotlin. -1. Download [BacktraceAndroid_UPL.xml](https://gist.github.com/ianrice07/36d8731f0d1af10af4803288c7c86c10). -1. In the `BacktraceAndroid_UPL.xml` file, provide the name of your [subdomain and a submission token](/error-reporting/platform-integrations/unreal/setup/#what-youll-need) for `BacktraceCredentials`. - - Java: - ```java - BacktraceCredentials credentials = new BacktraceCredentials("https://submit.backtrace.io/{subdomain}/{submission-token}/json"); - ``` - - Kotlin: - ```java - val backtraceCredentials = BacktraceCredentials("https://submit.backtrace.io/{subdomain}/{submission-token}/json") - ``` +1. Download [BacktraceWrapper](https://github.com/backtrace-labs/backtrace-unreal-android/releases) package. 1. In the directory for your Unreal Engine project, locate your app or game's `Build.cs` file. 1. Place the `BacktraceAndroid_UPL.xml` file in the same directory with the `Build.cs` file. 1. In the `Build.cs` file, add the following lines at the end of the `ModuleRules` class constructor: @@ -160,23 +151,27 @@ Integrate the [backtrace-android](https://github.com/backtrace-labs/backtrace-an } ``` -1. Download the [BacktraceWrapper.h](https://gist.github.com/lysannep/6c09a572baffede96cd250dbdf01279a#file-backtracewrapper-h) header file and add it to your GameInstance. -1. To initialize the Backtrace client, use `BacktraceIO::FInitializeBacktraceClient`. - :::note - It's recommended to initialize the client from the `GameInstance::OnStart()` method. However, if the method is not available, you can initialize the client with any method you use to start your app or game process. - ::: - :::note - Optionally, you can specify custom attributes and file attachment paths to submit with your error reports. If you choose to specify file attachment paths, they must be specified as Android paths. For example, to specify a file attachment path for your `ProjectSavedDir()`, use: +1. Place the `BacktraceWrapper.h` and `BacktraceWrapper.cpp` files in the same directory and add BacktraceWrapper to your GameInstance. +1. To initialize the Backtrace client, use `BacktraceIO::FInitializeBacktraceClient` with the name of your [subdomain and a submission token](/error-reporting/platform-integrations/unreal/setup/#what-youll-need) as a SubmissionUrl. + ```cpp + FString SubmissionUrl = TEXT("https://submit.backtrace.io/{subdomain}/{submission-token}/json"); + BacktraceIO::FInitializeBacktraceClient(SubmissionUrl, Attributes, Attachments); + ``` + + >**Note:** + >It's recommended to initialize the client from the `GameInstance::OnStart()` method. However, if the method is not available, you can initialize the client with any method you use to start your app or game process. + > + >Optionally, you can specify custom attributes and file attachment paths to submit with your error reports. If you choose to specify file attachment paths, they must be specified as Android paths. For example, to specify a file attachment path for your `ProjectSavedDir()`, use: ``` if (Target.Platform == UnrealTargetPlatform.Android) #include "Misc/App.h" #if PLATFORM_ANDROID extern FString GFilePathBase; - FString FileAttachmentPath = GFilePathBase + FString("/UE4Game/") + FApp::GetName() + TEXT("/") + FApp::GetName() + TEXT("/Saved") + TEXT("MyFileName.txt"); + FString FileName = TEXT("MyFileName.txt"); + FilePath = GFilePathBase + FString("/UE5Game/") + FApp::GetName() + TEXT("/") + FApp::GetName() + TEXT("/Saved/") + FileName; #endif ``` For more details on how to convert your Unreal Engine paths to Android paths, see the conversion functions for `FAndroidPlatformFile::PathToAndroidPaths` in the `AndroidPlatformFile.cpp` file. - ::: To change the default configuration settings for the Backtrace client, you can change the settings in the `BacktraceAndroid_UPL.xml` file. For more information, see [Configuring Backtrace for Android](/error-reporting/platform-integrations/android/configuration/) for the backtrace-android library.