# 接入指南
TIP
此插件目前已适配到UE5.8引擎,是专为基于UE引擎的游戏APP和应用程序而开发的异常监控插件,它能够自动捕获UE项目中脚本(如C++脚本和蓝图脚本)和本地代码(如Objective-C、Java)抛出的异常,并提供实时、准确的错误分析服务。目前仅测试并验证Windows端可用。
# 1.工具下载
在SDK下载页面点击下载Crasheye UE5 Plugin。
# 2.导入Plugin
将下载的插件文件解压,把其里面的 Plugins 文件夹下内容拷贝到你的UE项目根目录下的 Plugins 目录(如果没有则新建该文件夹)。
点击【刷新Visual Studio项目】,然后在C++项目工程中则可以看到Crasheye plugin代码,如图:
将Crasheye插件源码和项目源码一起编译,编译完成后则可以在编辑器看到Crasheye插件,如图:
# 3.配置Crasheye
当开启Crasheye插件以后,则可以在项目设置里面,分别设置Android和iOS以及PC平台是否开启Crasheye,以及各自Appkey等基本配置。需要注意设置上报路径UpURL的值。
* 目前支持 3 种路径
* internal_cn => 国内自研项目
* internal_oversea => 海外自研项目
* external => 外部项目
*
* 若不设置, 默认是 external
如下图所示:
# 4.关于Windows端的修改与处理
❗️ 由于PC版引擎本身就有CrashReport的机制;我们的Crasheye需要能够捕获dump的话,需要修改引擎,从源码构建版本才能正常使用。
💡 修改引擎的代码Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformCrashContext.cpp,
在本插件包已经放置了我改好的UE5.8版本的WindowsPlatformCrashContext.cpp文件,
各处修改均有//CrashEye的注释,后续如果升级UE引擎,可以自行手动将这部分代码merge过去再编译引擎使用。
PC端在发布游戏后,需要将CrasheyeReport64.exe和Crasheye64.dll两个文件随同游戏发布出去;文件位置为游戏exe目录顶层目录路径下(详见本仓库目录下《PC端Crash上报工具文件放置位置.doc文件》)
# 5.完成接入并测试
请在真机上调试验证,在Crasheye后台便能实时看到监控数据。
直接运行工程,您能在Crasheye的日志目录里看到如下的日志信息,就代表你的初始化已经成功:
# 常用API
# CrashEyeSetAppVersion【Windows不主动调用此函数】
设置App版本号
Crasheye默认读取配置文件中的版本信息,当然您也可以自己设置版本信息。 蓝图脚本:
/**
* 设置APP版本号
* @param Version APP APP版本号
*/
CrashEyeSetAppVersion(FString Version);
TIP
💡 PS:Windows版本号 在Game.ini文件中设置Distribution,插件启动时自动读取版本号(如若不设置,可以自行替换FCrashEyeModule::StartupModule函数中注释代码,版本获取设置/Script/EngineSettings.GeneralProjectSettings选项)
[Distribution]
Version=1.1.1.0
# CrashEyeSetUserIdentifier
设置用户标识
为每一条上报记录设置用户标识,可以方便后期筛选和定位问题,比如开发人员想看到自己手机上报的崩溃信息,就可以采用这种方式: 蓝图脚本:
/**
* 设置用户标识
* @param UserIdentifier 用户标识
*/
CrashEyeSetUserIdentifier(FString UserIdentifier);
# CrashEyeLeaveBreadcrumb
添加面包屑(打点信息)
您可以在您的代码中添加多个面包屑(打点信息)然后在Crasheye平台上查看面包屑(打点信息)的时间和顺序,这样您就可以监视到您的项目是否按照您的预设跑了!只需要在每个您想监视的地方调用如下API即可: 蓝图脚本:
/**
* 设置面包屑
* @param Breadcrumb 面包屑
*/
CrashEyeLeaveBreadcrumb(FString Breadcrumb);