加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos项目接入腾讯Bugly

发布时间:2020-12-14 17:18:00 所属栏目:百科 来源:网络整理
导读:1、腾讯Bugly简介 BuglySDK是可以上报bug到开发者后台的sdk,获取的信息可以包括用户移动设备的硬件信息(平台、系统、CPU架构、内存等各种信息)以及出错的堆栈信息。总之,这是一个可以让开发者快速获取用户端的设备信息的SDK,大大的提高了bug的修复效率

1、腾讯Bugly简介

BuglySDK是可以上报bug到开发者后台的sdk,获取的信息可以包括用户移动设备的硬件信息(平台、系统、CPU架构、内存等各种信息)以及出错的堆栈信息。总之,这是一个可以让开发者快速获取用户端的设备信息的SDK,大大的提高了bug的修复效率。

2、注册Bugly账号

去Bugly官网注册账号获取到APPID和APPKey等信息


3、集成Bugly插件

需要准备BuglyCocosPlugin这个官网提供的插件


这里面有很多内容,包括Android和iOS两个平台,可以获取到js C++ Lua等错误,这里只介绍Cocos-Lua的插件集成以及错误捕获。

首先把bugly目录放在cocos引擎的external文件内


这里是确保可以用到CrashReport.h以及lua文件内的内容(具体要看你的项目了)

然后把agent/Android目录下面的.jar文件和BuglySDK/Android下面的.jar文件放到项目的libs目录下面。



然后我们再把libBugly.so文件放进$(PROJECT)/jni/prebuilt


具体要放那个so文件具体要看设备的CPU架构来决定,有关so文件的知识建议仔细了解一下


然后修改proj.android/jni/Android.mk文件,修改这个资源是要生成我们bugly相关功能需要的so文件,有关Android.mk文件去这里了解一下走你~。


这些makefile代码主要是新建了一个module,然后生成一个libbugly_native_prebuilt.so文件跟包一起支持Bugly的工作。

接下来我们需要在AndroidManifest.xml文件内加一些代码:


到这个地方,BuglyCocosPlugin这个插件我们已经集成在我们的项目里面了,不过最开始我们申请的APPID还没使用到,还是没法和我们的后台链接,那么这里我们来初始化一下这个插件

在Classes/AppDelegate.cpp文件的AppDelegate::applicationDidFinishLaunching()函数里面调用CrashReport::initCrashReport(const char* appId,bool debug)来对Bugly初始化。

对了,还要记得加上头文件


OK,到目前为止,完成了大部分工作,不过还剩下最后一步,就是注册错误上报函数。让我们继续

接下里修改Android.mk文件,用来支持Lua错误的捕获

$(call import-moudle,external/bugly/lua)这局代码加到最后面

并且在Classes/AppDelegate.cpp文件的AppDelegate::applicationDidFinishLaunching()函数里面调用接口BuglyLuaAgent::registerLuaExceptionHandler(...)进行初始化,并且对刚才导入的头文件进行更新



最后在lua脚本的__G__TRACKBACK__这个脚本里面调用lua错误上报的bugly接口


到这里,接入工作就结束了,不过还没有配符号表,符号表可以让错误堆栈更加人性化,这里先不提了~

最后,应用的出错信息就可以获取到了

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读