更新记录
1.0.0(2024-06-04)
Bugly pro专业版,监控奔溃/ANR/OOM/错误/启动/卡顿/内存
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 3.6.8,Android:5.0,iOS:9,HarmonyNext:不确定 |
× |
× |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
× |
× |
× |
× |
× |
× |
× |
× |
× |
Bugly pro专业版,监控奔溃/ANR/OOM/错误/启动/卡顿/内存
快速接入
- 集成插件步骤请参考https://www.cnblogs.com/wenrisheng/p/18323027
- 登录bugly专业版官网https://bugly.tds.qq.com/v2/index/main
- 在 我的产品 页,点击 创建产品,按要求填写相关信息,申请创建产品。成功创建的产品,平台为其分配了AppID及AppKey,作为该产品在平台的凭证。
- 开发测试阶段可以使用"iOS体验Demo"、"Android体验Demo"里的AppID及AppKey,发布上线使用创建产品的AppID和AppKey
接口
import {
UTSBuglyPro
} from "@/uni_modules/wrs-uts-buglypro"
- 初始化SDK,一般放到App.vue的onLaunch生命周期里
初始化了以后,崩溃是100%上报,不支持采样。除崩溃外,其他监控能力都支持采样,默认是全部关闭。
let params = {}
let appID = "a278f01047"
let appKey = "1e5ab6b3-b6fa-4f9b-a3c2-743d31dffe86"
if (isAndroid) {
params.appID = "a278f01047"
params.appKey = "1e5ab6b3-b6fa-4f9b-a3c2-743d31dffe86"
params.userId = "123456"
// params.uniqueId = "" // 【推荐设置】设置设备唯一ID,必须保证唯一性,不设置则由Bugly生成唯一ID,影响设备异常率的统计以及联网设备数的统计,建议sp保存复用;
params.buildNumber = plus.runtime.versionCode + "" // 【推荐设置】设置App版本的构建号,用于Java堆栈翻译关联版本,跟上传符号表的构建号参数保持一致。
params.appVersion = plus.runtime
.version // 【推荐设置】设置App版本号,不设置则从packageManager中读取。建议按应用的规范,主动设置,需要跟上传符号表的应用版本参数保持一致。
params.appVersionType = "Debug" // Unknown、Debug、Gray、Release【推荐设置】设置版本类型
// params.deviceModel = ""
params.logLevel = 1
params.debugMode = true
params.enableCrashProtect = true
params.enableAllThreadStackAnr = true
params.enableAllThreadStackCrash = true
} else {
params.appID = "a2031e998b"
params.appKey = "5f58a9cf-0acc-4c0d-a020-fc8f0bacb3cc"
params.userId = "123456"
// params.uniqueId = "" // 【推荐设置】设置设备唯一ID,必须保证唯一性,不设置则由Bugly生成唯一ID,影响设备异常率的统计以及联网设备数的统计,建议sp保存复用;
params.buildNumber = plus.runtime.versionCode // 【推荐设置】设置
}
UTSBuglyPro.sdkInit(params)
UTSBuglyPro.testNativeCrash()
UTSBuglyPro.testANR()
if(this.isAndroid) {
UTSBuglyPro.testOOM()
} else {
this.showModel("ios oom已经集成,模拟暂未实现")
}
let params = {}
if(this.isAndroid) {
params.category = 10
params.errorType = "loginError"
params.errorMsg = "account is error"
params.stack = "loginStack"
params.extraInfo = {
name: "张三",
age: "11"
}
} else {
params.category = 10
params.name = "loginError"
params.reason = "account is error"
params.extraInfo = {
name: "张三",
age: "11"
}
params.terminateApp = false
}
UTSBuglyPro.testError(params)
App.vue的onLaunch里调用:
UTSBuglyPro.startSpan("AppLaunch", "")
启动进入到主页时调用:
UTSBuglyPro.endSpan("AppLaunch")
if(this.isAndroid) {
UTSBuglyPro.reportAppFullLaunch()
}
let millis = 200 // 毫秒
for(let i = 0; i < 10; i ++) {
UTSBuglyPro.testFPS(millis)
}
let tagName = "aa"
UTSBuglyPro.addTag(tagName)
- 自定义打点,即在启动过程中,针对启动流程,监控一些耗时任务。
let spanName = "login"
let parentSpanName = ""
UTSBuglyPro.startSpan(spanName, parentSpanName)
.....
UTSBuglyPro.endSpan(spanName)