注意:自 2024 年 7 月起,高级云诊断将正式弃用。它将在 2025 年第三季度停用,届时将继续为当前客户提供支持,直至其当前年度订阅结束。 如果您对崩溃和错误报告工具感兴趣,请联系我们

设置

将高级云诊断添加到您的 Unity 项目中,以自动检测和报告游戏中的错误和崩溃。

完成此页面上的步骤后,高级云诊断报告客户端将使用默认配置设置进行安装和设置。

您需要什么

您需要一个项目和一个提交令牌。您必须拥有有效的高级云诊断订阅才能访问令牌生成。默认情况下,系统会为您的项目生成提交令牌。如果您需要其他提交令牌,可以根据需要生成它们。

要生成提交令牌,请在 Unity Dashboard 中转到您的项目并打开“高级云诊断”诊断页面。

在您的 Dashboard 项目中,转到实时运营 > 高级云诊断 > 诊断 > 设置

设置中,转到 > 错误提交 > 提交令牌,然后选择添加 (+) 按钮。

为非 Unity 制作的解决方案进行设置

要将高级云诊断与 Unreal 引擎结合使用,请参阅Unreal 设置

系统要求

  • Unity 编辑器版本 2018.4 或更高版本
  • 脚本后端:Mono 或 IL2CPP
  • API 兼容性级别:.NET 4.0 或 .NET Standard 2.0

从云诊断迁移到高级云诊断

如果购买高级云诊断作为云诊断的升级,作为在新服务中创建组织的一部分,我们将从当前云诊断实例导入 90 天的数据。您可以在游戏中为新服务实现 SDK 的同时,使用当前数据开始使用高级云诊断。

相同的信息仍然在云诊断信息中心中可用。

禁用崩溃和异常报告

要使用高级云诊断,您需要替换云诊断的实现。确保已禁用崩溃和异常报告服务

  1. Unity 编辑器中打开您的项目。
  2. Unity 编辑器菜单中,选择窗口 > 常规 > 服务以打开“服务”窗口。
  3. 服务窗口中,选择云诊断
  4. 使用崩溃和异常旁边的切换按钮关闭该服务。

安装 SDK

要使用高级云诊断的全部功能,您需要安装 Backtrace Unity SDK。

以下方法可用于安装 Backtrace Unity SDK。

OpenUPM

安装 openupm-cli

npm install -g openupm-cli

转到您的 Unity 项目目录

cd YOUR_UNITY_PROJECT_DIR

安装最新的 io.backtrace.unity 包

openupm add io.backtrace.unity

Unity 包管理器

  1. 从 GitHub 下载最新版本的 Backtrace Unity SDK。
  2. 解压缩该包并将其保存在本地。
  3. Unity 编辑器中打开您的项目。
  4. Unity 编辑器菜单中,选择窗口 > 包管理器
  5. 完成 Unity 文档中从本地文件夹安装包中的步骤。

Git

Unity 2018.3 或更高版本支持此安装方法。

  1. 克隆源项目的 Git URL。
  2. Unity 编辑器中打开您的项目。
  3. Unity 编辑器菜单中,选择窗口 > 包管理器
  4. 完成 Unity 文档中从 Git URL 安装中的步骤。

使用 GameObject 初始化 Backtrace 客户端

在此步骤中,您将创建 Backtrace 配置资产,创建一个新的 GameObject,将 Backtrace Client 组件添加到 GameObject,然后将 Backtrace 配置添加到 Backtrace Client 组件。

您可以将 Backtrace Client 组件添加到游戏场景中的任何 GameObject。

  1. Unity 编辑器中打开您的项目。
  2. Unity 编辑器菜单中,选择资产 > Backtrace > 配置。(注意:如果“资产”下没有出现 Backtrace 选项,则关闭并重新打开项目,并确认软件包已正确安装。)
  3. 转到GameObject > 创建空对象
  4. 输入新 GameObject 的名称。
  5. 检视器中,选择添加组件
  6. 搜索“Backtrace”,然后选择Backtrace 客户端
  7. 资产文件夹中,将Backtrace 配置文件拖动到Backtrace 配置字段。

现在将显示 Backtrace 客户端配置和数据库配置选项的其他字段。

要更改 Backtrace 客户端和数据库选项,我们建议您使用 Backtrace 配置文件在 Unity UI 中更改这些值。或者,您也可以在 Unity 项目的 C# 代码中更改配置。

有关可用配置选项的更多信息,请参阅配置

配置服务器地址

需要服务器地址才能将错误和崩溃提交到您的高级云诊断实例。

获取您的服务器地址

在您的 Dashboard 项目中,转到实时运营 > 高级云诊断 > 诊断 > 设置

设置中,转到 > 错误提交 > 提交令牌

要获取令牌的服务器地址,请打开启用切换旁边的更多 (⋮) 菜单,然后选择复制服务器地址将其复制到剪贴板。

配置您的 Unity 编辑器项目

  1. Unity 编辑器中打开您的项目。
  2. 选择Backtrace 配置资产。
  3. 服务器地址字段中,输入服务器地址的 URL。

验证设置

至此,您已安装并设置 Backtrace 客户端以自动捕获 Unity 游戏中的崩溃和异常。要测试集成,请使用 try/catch 块引发异常并开始发送报告。

首先,包含 Backtrace 依赖项

using Backtrace.Unity; using Backtrace.Unity.Model;

在新脚本的 Start 方法等适当位置,使用以下内容验证设置

//Read from manager BacktraceClient instance
var backtraceClient = GameObject.Find("manager name").GetComponent<BacktraceClient>();
//Set custom client attribute
backtraceClient["attribute"] = "attribute value";
//Read from manager BacktraceClient instance
var database = GameObject.Find("manager name").GetComponent<BacktraceDatabase>();
try {
    //throw exception here
}
catch(Exception exception) {
    var report = new BacktraceReport(exception);
    backtraceClient.Send(report);
}