uniapp 集成友盟并且上传页面路径

如果不需要上传页面路径可以看看这篇https://blog.csdn.net/2301_78184382/article/details/156606416?spm=1011.2415.3001.5331

项目用的uniapp 框架是vue3目前项目中有个需求是需要统计用户访问地址和停留时间,话不多说上代码

插件地址

https://ext.dcloud.net.cn/plugin?id=12026

友盟https://workbench.umeng.com/去创建app应用

appkey查看位置,管理下面的应用管理的应用列表

在manifest.json中模块配置勾选统计

在manifest.json常用其他设置urlSchemes 这一步是为了调试的时候去看实时数据

新增mixin.js页面

javascript 复制代码
// main.js
import {
	createSSRApp
} from 'vue';
// #ifdef APP-PLUS
const UMStatistic = uni.requireNativePlugin('UM-Statistic');
// #endif
// 定义全局 mixin 对象
export const globalMixin = {
	// 生命周期(UniApp 页面生命周期)
	onLoad() {
		// #ifdef APP-PLUS
		//初始化,勾选友盟统计模块配置文件里面配置了appkey和channel时调用此接口初始化
		UMStatistic.UMinit();
		// #endif
		//appkey和channel初始化,未配置时用此接口初始化
		//UMStatistic.initWithAppkey(appkey, channel);
	},
	onShow() {
		var enable = false;//true:自动采集页面 false:手动采集页面
		console.log('页面显示')
		let pageValue = this.$getPath();
		// #ifdef APP-PLUS
		UMStatistic.setAutoPageEnabled(enable);
		UMStatistic.onPageStart(pageValue);
		// #endif
		console.log('页面显示', pageValue)
	},
	onHide() {
		let pageValue = this.$getPath();
		// #ifdef APP-PLUS
		UMStatistic.onPageEnd(pageValue);
		// #endif
	},
	// 自定义数据
	data() {
		return {
			globalTitle: '全局标题'
		}
	},
	// 全局方法
	methods: {
		// 显示提示
		$toast(title, duration = 2000) {
			uni.showToast({
				title,
				duration,
				icon: 'none'
			})
		},

		// 跳转页面
		$navigate(url) {
			uni.navigateTo({
				url
			})
		},

		// 获取当前页面路径
		$getPath() {
			const pages = getCurrentPages()
			return pages[pages.length - 1]?.route || ''
		}
	}
}

// export function createApp() {
//   const app = createSSRApp(App)

//   // 注册全局 mixin
//   app.mixin(globalMixin)

//   return { app }
// }

在main.js中去引入

javascript 复制代码
import {globalMixin} from '@/common/mixin.js'
export function createApp() {
	const app = createSSRApp(App)
	app.mixin(globalMixin)
	return {
		app,
		Vuex
	}
}

设置完了就需要打自定义基座,删除旧基座去重新运行

安卓文档集成测试

https://developer.umeng.com/docs/119267/detail/118639

ios文档集成测试

https://developer.umeng.com/docs/119267/detail/119520

登录友盟跳转查看实时日志

https://mobile.umeng.com/platform/config/check/realtimelog

相关推荐
满栀5854 分钟前
vue动态路由效果
前端·javascript·vue.js·前端框架·vue
土豆~13 分钟前
文件名没后缀就打不开:前端文件预览的内容嗅探改造
前端·状态模式
Euato_Key1 小时前
全栈视野学习Cookie——理解 Cookie 的本质
前端
前端开发呀1 小时前
我的 AI 终端配置清单
前端
心运软件1 小时前
SpringBoot+ Vue校园社团管理平台的完整架构设计
vue.js·后端
敲代码的玉米C1 小时前
测试一直在写你的真实数据根
前端·人工智能·架构
jjw_zyfx2 小时前
css vue vite实现闪烁的呼吸效果
javascript·css·vue.js
执子念的飞鱼2 小时前
File Viewer 进入 2K 节点后,我更在意这 3 条回归
前端·typescript
richdata2 小时前
动态OTB vs 静态OTB:鞋服零售该选哪种管理模式?
前端·html·零售
Jodie同志2 小时前
第16~23天:持久化、HITL、流式、MCP与安全
前端·后端·agent