浙政钉h5开发简单总结
1.在页面引入专有钉钉 JSAPI
npm install --save gdt-jsapi
import dd from 'gdt-jsapi'; /在使用页面导入
Vue.prototype.$zydd = zydd //或者挂载到vue
//CDN 引入
2.免登功能
dd.getAuthCode({
corpId:"xxxxx"//参数非必须 不传也行
}).then((res) => {
if (res) {
console.log(res.code)
//取得免登code 调用登录api操作
// ......
}
})
3.接入埋点
背景:应用上架需要接入监控 应省大数据局要求,现所有应用都需要接入监控。
埋点代码分为:稳定性监控代码(Emas)和流量分析代码(A+);其中流量分析代码(A+)包含通用采集 SDK、基础埋点、用户信息埋点;稳定性监控代码(Emas)只需要在首页加入。流量分析代码(A+)每个页面都需要加入,也可以写通用js,在其他页面引入。
稳定性监控代码(Emas)
流量分析代码(A+) 每个页面引入 包括首页 可以封装成通用js
(function (w, d, s, q, i) {
w[q] = w[q] || [];
varf = d.getElementsByTagName(s)[0], j = d.createElement(s);
j.async = true;
j.id = 'beacon-aplus';
j.src = 'https://alidt.alicdn.com/alilog/mlog/aplus_cloud.js';
f.parentNode.insertBefore(j, f);
// 阿里巴巴保密信息 / ALIBABACONFIDENTIAL
})(window, document, 'script', 'aplus_queue');
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['aplus-rhost-v', 'alog.zjzwfw.gov.cn']
});
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['aplus-rhost-g', 'alog.zjzwfw.gov.cn']
});
varu = navigator.userAgent
varisAndroid = u.indexOf('Android') > -1
varisIOS = !!u.match(/\(i[^;]+;(U;)?CPU.+MacOSX/)
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['appId', isAndroid ? '28302650' : isIOS ? '28328447' :
'47130293']
});
//单页应用或“单个页面”需异步补充PV日志参数还需进行如下埋点:
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['aplus-waiting', 'MAN']
});//
//单页应用路由切换后或在异步获取到pv日志所需的参数后再执行sendPV:
aplus_queue.push({
'action': 'aplus.sendPV',
'arguments': [{
is_auto: false
}, {
//当前你的应用信息,此两行按应用实际参数修改,不可自定义。
sapp_id: '*****', //必需 根据自己项目id填写
sapp_name: '*********',//必需 根据自己项目填写
//自定义PV参数key-value键值对(只能是这种平铺的json,不能做多层嵌套),
page_id: '页面ID,与page 参数配合使用,保证唯一性', //非必需
page_name: '页面中文名称',//非必需
page_url: '页面URL'//非必需
}]
})
// 阿里巴巴保密信息 / ALIBABACONFIDENTIAL
// 用户信息埋点
//如采集用户信息是异步行为需要先执行这个BLOCK埋点
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['_hold', 'BLOCK']
});
//设置会员ID
aplus_queue.push({
action: "aplus.setMetaInfo",
arguments: ["_user_id", "当前会员ID"]
});
aplus_queue.push({
action: "aplus.setMetaInfo",
arguments: ["_dev_id", "yourDeviceId"]
});
//如采集用户信息是异步行为,需要先设置完用户信息后再执行这个START埋点
//此时被block住的日志会携带上用户信息逐条发出
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['_hold', 'START']
});
查看上传成功
可在console里面的network里查看。
流量分析(A+)具体查看方法:参见‘浙政钉h5&小程序应用采集开发手册‘。 稳定性监控(Emas)可以查看:upload状态为200即为上报成功。
埋点成功查询链接
https://yida-pro.ding.zj.gov.cn/alibaba/web/APP_VTZ4TZZSGZXB37IUIUM6/inst/homepage/#/
每周一晚上更新 输入标识可查询是否成功 你这周埋的点可能要下周一晚才能查询是否成功
4.判断是否是浙政钉打开
let ua = navigator.userAgent.toLowerCase()
let ua = navigator.userAgent.toLowerCase();
if(/taurusapp/.test(ua)){
}