diff --git a/App.uvue b/App.uvue index e5f89232a02c9ddb71af6a5a147366efe0d5a9ad..d630033f9b1849f8fcff3f96386867e39880f176 100644 --- a/App.uvue +++ b/App.uvue @@ -49,15 +49,15 @@ // 统计上报 - 应用启动 // #ifdef APP-ANDROID || APP-IOS || WEB - // uni.report({ - // name: 'uni-app-launch', - // options: res, - // success(res_data) { - // console.log(res_data); - // }, fail(err) { - // console.log(err); - // } - // }) + uni.report({ + name: 'uni-app-launch', + options: res, + success(res_data) { + console.log(res_data); + }, fail(err) { + console.log(err); + } + }) // #endif // #ifdef APP if (process.env.NODE_ENV !== 'development') { //真机运行可以注释此条件 @@ -90,14 +90,14 @@ // #ifdef APP-ANDROID || APP-IOS || WEB // 统计上报 - 应用显示 - // uni.report({ - // name: 'uni-app-show', - // success(res_data) { - // console.log(res_data); - // }, fail(err) { - // console.log(err); - // } - // }) + uni.report({ + name: 'uni-app-show', + success(res_data) { + console.log(res_data); + }, fail(err) { + console.log(err); + } + }) // #endif }, onHide: function () { @@ -107,14 +107,14 @@ // #ifdef APP-ANDROID || APP-IOS || WEB // 统计上报 - 应用进入后台 - // uni.report({ - // name: 'uni-app-hide', - // success(res) { - // console.log(res); - // }, fail(err) { - // console.log(err); - // } - // }) + uni.report({ + name: 'uni-app-hide', + success(res) { + console.log(res); + }, fail(err) { + console.log(err); + } + }) // #endif }, // #ifdef APP-ANDROID @@ -144,15 +144,15 @@ // console.log('App onError', err) // #ifdef APP-ANDROID || APP-IOS || WEB // 统计上报 - 应用发生错误 - // uni.report({ - // name: 'uni-app-error', - // options: err, - // success(res) { - // console.log(res); - // }, fail(err) { - // console.log(err); - // } - // }) + uni.report({ + name: 'uni-app-error', + options: err, + success(res) { + console.log(res); + }, fail(err) { + console.log(err); + } + }) // #endif }, methods: { diff --git a/main.uts b/main.uts index 03df6e0b73bb05d359994e40e40a579b81d12cdd..3c691bc481984d2e598243c4cf3fcd632135c6c9 100644 --- a/main.uts +++ b/main.uts @@ -1,27 +1,27 @@ // 仅测试 console.log 时机问题 import './test-main-console.uts' -// // #ifdef APP-ANDROID || APP-IOS || WEB -// import { uniStat } from '@/uni_modules/uni-stat/plugin.uts' -// // #endif +// #ifdef APP-ANDROID || APP-IOS || WEB +import { uniStat } from '@/uni_modules/uni-stat/plugin.uts' +// #endif import App from './App.uvue' import { createSSRApp } from 'vue' -// // 统计配置 -// const uniStatcollectItems = { -// uniStatPageLog: true -// } +// 统计配置 +const uniStatcollectItems = { + uniStatPageLog: true +} -// const uniStatOptions = { -// debug: true, -// collectItems: uniStatcollectItems, -// } +const uniStatOptions = { + debug: true, + collectItems: uniStatcollectItems, +} export function createApp() { const app = createSSRApp(App) - // // #ifdef APP-ANDROID || APP-IOS || WEB - // app.use(uniStat, uniStatOptions) - // // #endif + // #ifdef APP-ANDROID || APP-IOS || WEB + app.use(uniStat, uniStatOptions) + // #endif // app.mixin({ // onReady() { // setTimeout(() => { diff --git a/pages.json b/pages.json index e1fd969b39f80111be587e1bfea524d73da5816b..7a0a4fe054e2666a3515206fde1e5f31ed7494d3 100644 --- a/pages.json +++ b/pages.json @@ -1218,6 +1218,7 @@ }, { "path": "pages/API/report/report", + "group": "1,17,0", "style": { "navigationBarTitleText": "report | 统计采集上报" } diff --git a/pages/API/report/report.test.js b/pages/API/report/report.test.js new file mode 100644 index 0000000000000000000000000000000000000000..fab752934dc356fc52fde36aab33176c47190eab --- /dev/null +++ b/pages/API/report/report.test.js @@ -0,0 +1,31 @@ +const PAGE_PATH = '/pages/API/report/report' +const platformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase() +const isAndroid = platformInfo.startsWith('android') + +describe('report', () => { + let page = null + beforeAll(async () => { + page = await program.navigateTo(PAGE_PATH) + await page.waitFor('view') + }) + it('Report - onLaunch', async () => { + await page.callMethod('handleAppLaunch') + const msg = await page.data('msg') + expect(msg).toBe('onLaunch --> report:ok') + }) + it('Report - onShow', async () => { + await page.callMethod('handleAppShow') + const msg = await page.data('msg') + expect(msg).toBe('onAppShow --> report:ok') + }) + it('Report - onHide', async () => { + await page.callMethod('handleAppHide') + const msg = await page.data('msg') + expect(msg).toBe('onAppHide --> report:ok') + }) + it('Report - onError', async () => { + await page.callMethod('handleAppError') + const msg = await page.data('msg') + expect(msg).toBe('onAppError --> report:ok') + }) +}) diff --git a/pages/API/report/report.uvue b/pages/API/report/report.uvue index 2a940d80f27c69d86f1e461f3a33947bacbc414d..58701501d49b52e711cc789314202863866d7d08 100644 --- a/pages/API/report/report.uvue +++ b/pages/API/report/report.uvue @@ -2,12 +2,30 @@ - - 当前页面调用API均为模拟,请查看文档,在特定场景下使用以下 API。请在main.uts中设置统计debug配置为true,并点击按钮查控制台输出。 - - + + + + 调用信息: + {{msg}} + + + + + + + + + 当前页面调用API均为模拟,请查看文档,在特定场景下使用以上 API。请在main.uts中设置统计debug配置为true,并点击按钮查控制台输出。 + + @@ -18,29 +36,93 @@ export default { data() { return { - + msg: '点击按钮,测试上报' } }, methods: { - handleAppLunch() { - const options = uni.getLaunchOptionsSync() + handleAppLaunch() { + const options = uni.getLaunchOptionsSync() uni.report({ name: 'uni-app-launch', options: options, - success(data) { - console.log(data); - }, fail(err) { + success:(res)=> { + this.msg = 'onLaunch --> ' + res.errMsg + console.log(res); + }, fail:(err)=> { + this.msg = 'onLaunch --> ' + err.errMsg console.log(err); } }) - } + }, + handleAppHide() { + uni.report({ + name: 'uni-app-hide', + success:(res)=> { + this.msg = 'onAppHide --> ' + res.errMsg + console.log(res); + }, fail:(err)=> { + this.msg = 'onAppHide --> ' + err.errMsg + console.log(err); + } + }) + }, + handleAppShow() { + // const options = uni.getLaunchOptionsSync() + uni.report({ + name: 'uni-app-show', + success:(res)=> { + this.msg = 'onAppShow --> ' + res.errMsg + console.log(res); + }, fail:(err)=> { + this.msg = 'onAppShow --> ' + err.errMsg + console.log(err); + } + }) + }, + handleAppError() { + const errmsg = '测试错误' + uni.report({ + name: 'uni-app-error', + options: errmsg, + success:(res)=> { + this.msg = 'onAppError --> ' + res.errMsg + console.log(res); + }, fail:(err)=> { + this.msg = 'onAppError --> ' + err.errMsg + console.log(err); + } + }) + }, } } diff --git a/uni_modules/uni-stat/plugin.uts b/uni_modules/uni-stat/plugin.uts index 809870c25248aa52994334cfc98f287cf1a9c3fc..c95b88bc94e126adddbb6e8b944940c94eb5648f 100644 --- a/uni_modules/uni-stat/plugin.uts +++ b/uni_modules/uni-stat/plugin.uts @@ -11,11 +11,11 @@ const lifecycle = defineMixin({ stat_instance.onLoad(this) }, // @ts-ignore - onPageShow() { + onShow() { stat_instance.onShow(this) }, // @ts-ignore - onPageHide() { + onHide() { stat_instance.onHide(this) }, // @ts-ignore diff --git a/uni_modules/uni-stat/utssdk/common/core/report.uts b/uni_modules/uni-stat/utssdk/common/core/report.uts index 2c21089bc904d7927f81d4f3899754901dffc103..8f3b5b25b762aeda4f8f079115849869e6a2bb98 100644 --- a/uni_modules/uni-stat/utssdk/common/core/report.uts +++ b/uni_modules/uni-stat/utssdk/common/core/report.uts @@ -291,8 +291,6 @@ export class Report { } appError(em : any) { - console.log('发生了错误123'); - console.log(em); let errmsg : string // #ifdef APP-ANDROID // @ts-ignore