Skip to content

Commit 723b294

Browse files
author
jasoncdavis0
authored
Update README.md
1 parent ccf9484 commit 723b294

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

README.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ Backtrace-unity has been tested and certified for games deployed on the followin
7171
- Mobile - Android, iOS
7272
- PC - Windows, Mac
7373
- Web - WebGL
74-
- Game Consoles - PlayStation4, Xbox One, Nintendo Switch
74+
- Game Consoles - PlayStation4, PlayStation5, Xbox One, Xbox Series X, Nintendo Switch, Google Stadia
7575

7676
There are some differences in capabilities that backtrace-unity provides based on the platform. Major capabilities are summarized as follows:
7777

@@ -80,7 +80,7 @@ There are some differences in capabilities that backtrace-unity provides based o
8080
- iOS - Identified by attribute `uname.sysname` = IOS; ANRs (Hangs), Native Engine, Memory and Plugin Crashes.
8181
- WebGL - Identified by attribute `uname.sysname` = WebGL. The attribute `device.model` is currently used to share the browser information. Note that stacktraces for WebGL errors are only available if you choose to enable them in the Publishing Settings / Enable Exceptions drop down. More details [here](https://docs.unity3d.com/Manual/webgl-building.html).
8282
- Switch - Identified by attribute `uname.sysname` = Switch. Note that the attribute GUID is regenerated with each Switch restart (It is not an accurate count of number of Users or Devices. It is a count of Switch Sessions). Note that the current release does no support Offline Database or related features.
83-
- PlayStation4 - Identified by attribute `uname.sysname` = PS4.
83+
- PlayStation4 / PlayStation5- Identified by attribute `uname.sysname` = PS4 / PS5
8484
- Windows - Identified by attribute `uname.sysname` = Windows. Provides an option to capture Minidumps for Engine Crashes.
8585
- MacOS - Identified by attribute `uname.sysname` = MacOS.
8686

@@ -130,7 +130,9 @@ One of the integration paths require to create game object in your game scene. I
130130
attributes: attributes);
131131
```
132132

133-
If you need to use more advanced configuration, `Initialize` method accepts a `BacktraceConfiguration` scriptable object.
133+
If you need to use more advanced configuration, `Initialize` method accepts a `BacktraceConfiguration` scriptable object. See below:
134+
135+
NOTE: If you are deploying for Android you may want to take advantage of Backtrace's client side unwinding feature. In cases where an NDK application has system and other opaque libraries involved in a crash, it is better to unwind the callstack on the crashing application (i.e: the client). This may not provide the same callstack quality as with debugging symbols, but will give you debugging information you would otherwise not have if you don't have debugging symbols available. This function is enabled in backtrace-unity via the BacktraceConfiguration object and the `.ClientSideUnwinding = true;`.
134136

135137
```csharp
136138
var configuration = ScriptableObject.CreateInstance<BacktraceConfiguration>();
@@ -139,6 +141,7 @@ If you need to use more advanced configuration, `Initialize` method accepts a `B
139141
configuration.DatabasePath = "${Application.persistentDataPath}/sample/backtrace/path";
140142
configuration.CreateDatabase = true;
141143
configuration.Sampling = 0.002;
144+
configuration.ClientSideUnwinding= true;
142145
_backtraceClient = BacktraceClient.Initialize(
143146
configuration,
144147
gameObjectName: "game-object-name",
@@ -218,6 +221,10 @@ The backtrace-unity library includes support for capturing Android NDK crashes a
218221

219222
`system.memory` usage related information including memfree, swapfree, and vmalloc.used is now available. Additional VM details and voluntary / nonvountary ctxt switches are included.
220223

224+
## Client side unwinding
225+
226+
If you are deploying for Android you may want to take advantage of Backtrace's client side unwinding feature. In cases where an NDK application has system and other opaque libraries involved in a crash, it is better to unwind the callstack on the crashing application (i.e: the client). This may not provide the same callstack quality as with debugging symbols, but will give you debugging information you would otherwise not have if you don't have debugging symbols available. This function is enabled in backtrace-unity via the BacktraceConfiguration object and the `.ClientSideUnwinding = true;`. See an example in the [Integrating into your project via code](#integrating-into-your-project-via-code)
227+
221228
## ANRs and Hangs <a name="anr-reporting"></a>
222229

223230
When configuring the backtrace-unity client for an Android deployment, programmers will have a toggle available in the backtrace-unity GUI in the Unity Editor to enable or disable ANR or Hang reports. This will use the default of 5 seconds. This will be made configurable in a future release.

0 commit comments

Comments
 (0)