首页 > 编程语言 >浙政钉埋点——小程序

浙政钉埋点——小程序

时间:2024-03-25 13:23:45浏览次数:16  
标签:name aplus 程序 js 浙政钉 埋点 data id

浙政钉埋点——小程序

准备工作:
1、浙政钉埋点官方开发手册:浙政钉-H5&小程序应用采集开发手册
2、准备sapp_id、spp_name(每个应用的spp_id和spp_name都是不同的,不知道的问业主要)
3、下载小程序通用采集SDK,下载地址打开后直接全选复制下来,我自己命名为aplus_mini.js

项目结构如下

下面开始埋点

1、main.js 内引用 sdk,并做相应配置

import dd from 'gdt-jsapi';
import mixin from './utils/mixin.js'
Vue.mixin(mixin)
var system = dd.getSystemInfoSync()
var ptf = system.platform.toUpperCase()
var aplus = require('./utils/aplus_mini.js')(
  {
  'metaInfo':{
    'appId':ptf=='ANDROID'?'28302650':ptf=='IOS'?'28328447':'47130293', 
    'aplus-rhost-v':'alog.zjzwfw.gov.cn',
    'aplus-rhost-g':'alog.zjzwfw.gov.cn'
  }
}
);
Vue.prototype.$aplus = aplus
 
// 自定义封装埋点方法全局注册
import { baseAplus } from './utils/dataCollection.js'
Vue.prototype.$baseAplus = baseAplus

2、封装流量分析埋点代码,dataCollection.js代码如下
该文件中一共有四个需要替换的参数,根据实际情况填写

import store from '../store/index.js'
export function baseAplus(data) {
	let curPage = getCurrentPages();
	let route = curPage[curPage.length - 1].route;
	console.log('路由信息',route)
	console.log('埋点信息',data)


	// 基础埋点
	this.$aplus.aplus_queue.push({
	action:'aplus.setMetaInfo',
	arguments:['aplus-waiting','MAN']
	});//
	//单页应用路由切换后或在异步获取到pv日志所需的参数后再执行sendPV:
	this.$aplus.aplus_queue.push({
	'action':'aplus.sendPV',
	'arguments':[{
	is_auto:false
	},{
	//当前你的应用信息,此两行按应用实际参数修改,不可自定义。
	sapp_id:'替换为-业主给你的sapp_id',
	sapp_name:'替换为-业主给你的sapp_name',
	//自定义PV参数key-value键值对(只能是这种平铺的json,不能做多层嵌套),
	// page_id: '页面ID,与page 参数配合使用,保证唯一性,我用的是路由',
	// page_name: '页面中文名称',
	// page_url: '页面URL'
	page_id: data.id,
	page_name: data.name,
	page_url: route
	}]
	})

	//如采集用户信息是异步行为需要先执行这个BLOCK埋点
	this.$aplus.aplus_queue.push({
	action:'aplus.setMetaInfo',
	arguments:['_hold','BLOCK']
	});
	//设置会员ID
	this.$aplus.aplus_queue.push({
	action:"aplus.setMetaInfo",
	arguments:["_user_id",'替换为-当前登录用户的accountId']//示例:store.state.userInfo.dingAccountId,具体根据实际代码调整
	});

	this.$aplus.aplus_queue.push({
	action:"aplus.setMetaInfo",
	arguments:["_dev_id","yourDeviceId"]
	});

	this.$aplus.aplus_queue.push({
	action:"aplus.setMetaInfo",
	arguments:["_user_nick",'替换为-当前登录用户的accountId']//示例:store.state.userInfo.dingAccountId,具体根据实际代码调整
	});
	//如采集用户信息是异步行为,需要先设置完用户信息后再执行这个START埋点
	//此时被block住的日志会携带上用户信息逐条发出
	this.$aplus.aplus_queue.push({
	action:'aplus.setMetaInfo',
	arguments:['_hold','START']
	});
	console.log('埋点完成')
}

3、在每个页面中调用上述封装的方法,我这里使用全局混入,mixin.js代码如下

import dd from 'gdt-jsapi'
import {baseAplus} from './dataCollection.js'
export default{
	data(){
		return{
			mdName:'通用名称'
		}
	},
	onLoad(){
		this.doMd()
	},
	methods:{
		doMd(){
			let routes = getCurrentPages(); // 获取当前打开过的页面路由数组
			let curRoute = routes[routes.length - 1].route // 获取当前页面路由,也就是最后一个打开的页面路由
			baseAplus({id:curRoute, name:mdName})
		},
	}
}

注意:使用该方法需要在每个页面的data中单独定义一个mdName,(mixin中data优先级小于组件中的data),比如首页index.vue,其他页面同样操作,确保每个页面的mdName不要相同

<template>
  首页
  ......
</template>
<script>
  export default{
    data(){
      return{
        mdName:'首页',
        ...
      }
    }
  }
</script>

至此,埋点结束,怎么看埋点是否成功,参考下图,看看参数是否都对的上,重点关注sapp_id和sapp_name,如果没有,那一定是不成功的


具体查询埋点是否成功,点这里,用浙政钉扫码登陆就行,好像每周一中午,周二周四晚上才会更新

标签:name,aplus,程序,js,浙政钉,埋点,data,id
From: https://www.cnblogs.com/hongxinc/p/18094136/uniapp-zzdmd

相关文章

  • 会议室预约小程序源码系统 带完整的安装代码包以及搭建教程
    随着企业会议需求的日益增长,会议室预约管理成为了一项不可或缺的工作。为了提高预约效率,减少资源冲突,会议室预约小程序应运而生。小编给大家介绍一款功能强大、易于安装的会议室预约小程序源码系统,带有完整的安装代码包及搭建教程。以下是部分代码示例:系统特色功能一览: ......
  • 盲盒交友小程序源码系统 带完整的代码包以及安装部署教程
    盲盒交友小程序源码系统的开发背景,源于社交媒体的蓬勃发展和年轻用户对于新颖、有趣社交方式的追求。盲盒交友作为一种新型的社交模式,以其神秘感和刺激性,迅速在年轻人中走红。而小程序作为一种轻量级、易上手的应用形式,更是为盲盒交友提供了便捷的传播渠道。因此,盲盒交友小程序......
  • 53文章解读与程序——配电网重构(IEEE333)附带WORD注释解读___已提供下载资源
    ......
  • Java项目:小程序公交信息在线查询系统(java+SSM+Vue+ElementUI+mysql)
    源码获取:俺的博客首页"资源"里下载! 项目介绍基于SSM+Vue的小程序公交信息在线查询系统小程序角色:管理员、用户两种角色,分为小程序端和后台管理两部分;用户:用户通过小程序登录页面可以填写用户名和密码等信息进行登录操作,登录成功后,进入首页可以查看首页、线路信息、站......
  • Java项目:小程序公交信息在线查询系统(java+SSM+Vue+ElementUI+mysql)
    源码获取:俺的博客首页"资源"里下载! 项目介绍基于SSM+Vue的小程序公交信息在线查询系统小程序角色:管理员、用户两种角色,分为小程序端和后台管理两部分;用户:用户通过小程序登录页面可以填写用户名和密码等信息进行登录操作,登录成功后,进入首页可以查看首页、线路信息、站......
  • 微信小程序使用echarts(三)
    一、新问题在根据前两个步骤完成小程序图表的显示之后,发现echarts过大,导致小程序超过2m二、解决过程1、根据官网上的提示进行图表定制,同时注意官网上的echarts.js版本和定制版本需要一致,以防出现版本原因导致的其他问题2、在定制完成,并且将定制的echarts.min.js替换掉原来的ec......
  • 计算几何(广州大学第十八届ACM大学生程序设计竞赛)
    题目描述2023年赛季中,污渍与小夨相约,区域赛上一定要先看SUA的计算几何题,并且成功偷鸡;遗憾的是,赛季结束后,两人只能举起可乐向着一轮残月:“****,退钱!!!”;为了弥补遗憾,小夨决定出一道简单的计算几何题,并且期待赛场上的朋友们能够将其通过。以上为题目背景;给定n 个点(编号1∼n),你......
  • 字符画(广州大学第十八届ACM大学生程序设计竞赛)
    题目描述Ljc在一个大小为n×mn\timesmn×m 的画板上画了一幅字符画,画的内容由以下三种字符组成(左边的字符为字符1,中间的为字符2,右边的为字符3);Ljc不会将字符旋转或者镜像,也就是说当某个字符出现时,只会是以上图片中的形式;Ljc是一个严谨的人,他不会在一个格子里画两次,......
  • 第一个Python程序(上)
    1第一个HelloPython程序1.1Python源程序的基本概念Python源程序就是一个特殊格式的文本文件,可以使用任意文本编辑软件做Python的开发Python程序的文件扩展名通常都是.py1.2演练步骤新建study_Python目录在study_Python目录下新建hello_python.p......
  • spark-shell(pyspark)单机模式使用和编写独立应用程序
    spark有四种部署方式:Local,Standalone,SparkonMesos,Sparkonyarn。第一个为单机模式,后三个为集群模式。spark-shell支持python和scala,这里使用python。1.启动pyspark环境在spark安装目录下./bin/pyspark进入之后,如下图: 2.编写程序新建代码文件WordCount.py,并编写程序......