Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
hello uni-app x
提交
cfe12ceb
H
hello uni-app x
项目概览
DCloud
/
hello uni-app x
通知
5992
Star
90
Fork
162
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
18
列表
看板
标记
里程碑
合并请求
1
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hello uni-app x
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
18
Issue
18
列表
看板
标记
里程碑
合并请求
1
合并请求
1
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
cfe12ceb
编写于
11月 15, 2024
作者:
M
mehaotian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: 统计新增错误类型,优化错误输出逻辑
上级
e03f9039
变更
7
显示空白变更内容
内联
并排
Showing
7 changed file
with
298 addition
and
279 deletion
+298
-279
App.uvue
App.uvue
+1
-2
main.uts
main.uts
+1
-1
uni_modules/uni-stat/plugin.uts
uni_modules/uni-stat/plugin.uts
+11
-9
uni_modules/uni-stat/utssdk/common/core/stat.uts
uni_modules/uni-stat/utssdk/common/core/stat.uts
+276
-265
uni_modules/uni-stat/utssdk/index.uts
uni_modules/uni-stat/utssdk/index.uts
+1
-2
uni_modules/uni-stat/utssdk/interface.uts
uni_modules/uni-stat/utssdk/interface.uts
+4
-0
uni_modules/uni-stat/utssdk/unierror.uts
uni_modules/uni-stat/utssdk/unierror.uts
+4
-0
未找到文件。
App.uvue
浏览文件 @
cfe12ceb
...
@@ -46,7 +46,6 @@
...
@@ -46,7 +46,6 @@
// observer1.observe({
// observer1.observe({
// entryTypes: ['render', 'navigation'],
// entryTypes: ['render', 'navigation'],
// } as PerformanceObserverOptions)
// } as PerformanceObserverOptions)
// 统计上报 - 应用启动
// 统计上报 - 应用启动
// #ifdef APP-ANDROID || APP-IOS || WEB
// #ifdef APP-ANDROID || APP-IOS || WEB
uni.report({
uni.report({
...
...
main.uts
浏览文件 @
cfe12ceb
...
@@ -13,7 +13,7 @@ const uniStatCollectItems = {
...
@@ -13,7 +13,7 @@ const uniStatCollectItems = {
}
}
const uniStatOptions = {
const uniStatOptions = {
debug:
tru
e,
debug:
fals
e,
collectItems: uniStatCollectItems,
collectItems: uniStatCollectItems,
}
}
...
...
uni_modules/uni-stat/plugin.uts
浏览文件 @
cfe12ceb
...
@@ -31,6 +31,8 @@ const lifecycle = defineMixin({
...
@@ -31,6 +31,8 @@ const lifecycle = defineMixin({
export const uniStat = definePlugin({
export const uniStat = definePlugin({
install(app : VueApp, options : UTSJSONObject) {
install(app : VueApp, options : UTSJSONObject) {
// 未关联服务空间
if (Stat.no_space) return
stat_instance.init(options)
stat_instance.init(options)
app.mixin(lifecycle)
app.mixin(lifecycle)
}
}
...
...
uni_modules/uni-stat/utssdk/common/core/stat.uts
浏览文件 @
cfe12ceb
import { Report } from "./report.uts";
import { Report } from "./report.uts";
import { StatType } from "./stat-type";
import { StatType } from "./stat-type";
import { EventParams, UniStatOptions, ErrorCallback,ReportErrorCode } from '../../interface.uts'
import { EventParams, UniStatOptions, ErrorCallback,
ReportErrorCode } from '../../interface.uts'
import { is_page, is_page_report, get_space, is_push_clientid, calibration } from '../utils/pageInfo.uts'
import { is_page, is_page_report, get_space, is_push_clientid, calibration } from '../utils/pageInfo.uts'
import { Config } from "../config";
import { Config } from "../config";
export class Stat {
export class Stat {
static __stat_instance : Stat | null = null;
static __stat_instance : Stat | null = null;
static is_register : boolean = false
static is_register : boolean = false
static no_space : boolean = false
// 上报逻辑实例
// 上报逻辑实例
report : Report;
report : Report;
// 使用单例,只初始化一次
// 使用单例,只初始化一次
static getInstance() : Stat {
static getInstance() : Stat {
// 获取服务空间配置信息
// 获取服务空间配置信息
let space = get_space(uniCloud.config)
let space = get_space(uniCloud.config)
if (Report.uniCloudInstance == null) {
if (Report.uniCloudInstance == null) {
...
@@ -41,7 +41,15 @@ export class Stat {
...
@@ -41,7 +41,15 @@ export class Stat {
Report.uniCloudInstance = uniCloud.init(spaceData)
Report.uniCloudInstance = uniCloud.init(spaceData)
} else {
} else {
if (!Stat.no_space) {
// #ifdef WEB
console.log('\x1b[31m应用已集成uni统计,但未关联服务空间,请在uniCloud目录右键关联服务空间\x1b[39m')
// #endif
// #ifndef WEB
console.error('应用已集成uni统计,但未关联服务空间,请在uniCloud目录右键关联服务空间')
console.error('应用已集成uni统计,但未关联服务空间,请在uniCloud目录右键关联服务空间')
// #endif
Stat.no_space = true
}
}
}
}
}
...
@@ -69,7 +77,6 @@ export class Stat {
...
@@ -69,7 +77,6 @@ export class Stat {
init(options : UTSJSONObject) {
init(options : UTSJSONObject) {
// 插件挂载玩成,可以进行后续操作
// 插件挂载玩成,可以进行后续操作
Stat.is_register = true
Stat.is_register = true
// 参数处理
// 参数处理
Config.setOptions({ ...options } as UniStatOptions)
Config.setOptions({ ...options } as UniStatOptions)
const uniStatConfig = Config.getOptions()
const uniStatConfig = Config.getOptions()
...
@@ -223,6 +230,10 @@ export class Stat {
...
@@ -223,6 +230,10 @@ export class Stat {
}
}
// 自定义参数上报
// 自定义参数上报
appEvent(name : string, options : any | null = null, fn : ErrorCallback) {
appEvent(name : string, options : any | null = null, fn : ErrorCallback) {
if (Stat.no_space) {
fn(false, 61000 as ReportErrorCode)
return
}
if (!Stat.is_register) {
if (!Stat.is_register) {
fn(false, 61001 as ReportErrorCode)
fn(false, 61001 as ReportErrorCode)
return
return
...
...
uni_modules/uni-stat/utssdk/index.uts
浏览文件 @
cfe12ceb
...
@@ -7,7 +7,6 @@ const stat = Stat.getInstance()
...
@@ -7,7 +7,6 @@ const stat = Stat.getInstance()
export const report : Report = function (options : ReportOptions) {
export const report : Report = function (options : ReportOptions) {
const name = options.name
const name = options.name
const option = options.options
const option = options.options
//创建一个UniError
stat.appEvent(name, option, (type : boolean, code : ReportErrorCode) => {
stat.appEvent(name, option, (type : boolean, code : ReportErrorCode) => {
if (type) {
if (type) {
const res : ReportSuccess = {
const res : ReportSuccess = {
...
...
uni_modules/uni-stat/utssdk/interface.uts
浏览文件 @
cfe12ceb
...
@@ -12,6 +12,10 @@ export type ReportSuccess = {
...
@@ -12,6 +12,10 @@ export type ReportSuccess = {
* 错误码
* 错误码
*/
*/
export type ReportErrorCode =
export type ReportErrorCode =
/**
* 应用已集成uni统计,但未关联服务空间,请在uniCloud目录右键关联服务空间
*/
61000 |
/**
/**
* 统计服务尚未初始化,需在`main.uts`中引入统计插件
* 统计服务尚未初始化,需在`main.uts`中引入统计插件
*/
*/
...
...
uni_modules/uni-stat/utssdk/unierror.uts
浏览文件 @
cfe12ceb
...
@@ -11,6 +11,10 @@ export const ReportUniErrorSubject = 'uni-report';
...
@@ -11,6 +11,10 @@ export const ReportUniErrorSubject = 'uni-report';
* @UniError
* @UniError
*/
*/
export const ReportUniErrors:Map<number, string> = new Map([
export const ReportUniErrors:Map<number, string> = new Map([
/**
* 已集成uni统计,但未关联服务空间
*/
[61000, '应用已集成uni统计,但未关联服务空间,请在uniCloud目录右键关联服务空间!'],
/**
/**
* 统计已集成,但未初始化
* 统计已集成,但未初始化
*/
*/
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录