uni-app
应用开发过程中,考虑接入神策做数字化运营。
插件市场下载相关sdk->Sensorsdata-UniPlugin-JS文件,放进项目文件夹
下载神策 uni-app 插件,将下载的 Sensorsdata-UniPlugin-JS
文件夹放在自己项目中的 common
文件夹中。
添加后目录如下图所示:
打开 DCloud 插件市场中神策分析 uni-app 插件主页,并点击 ”购买(0 元)for 云打包“ 按钮。
绑定包名
2.1.2. 加载原生插件
在 mainifest.json
文件中的 App 原生插件配置中下载已购买的云端插件。
打开 DCloud 插件市场中神策分析 uni-app 插件主页,并点击 ”下载 for 离线打包“ 按钮。
用 HBuilderX
打开 uni-app
项目,并在项目根目录下新建 nativeplugins
目录(已存在不需要新建)。
解压下载的离线插件包,并添加至 nativeplugins
目录下。
打开 manifest.json
配置面板,选择 App 原生插件配置,并选择点击 ”选择本地插件“ 按钮,添加本地插件。
添加插件参数信息。
配置信息完成后,需制作自定义调试基座。运行 → 运行到手机或模拟器 → 制作自定义调试基座,并填写应用相关信息后提交打包。
经过上面的云集成或离线集成操作后,如何验证集成成功与否呢?
集成成功后,APP端并不会看到验证结果,需要到相应的神策Web控制台查看。
在app.vue
中导入index.js
文件后进行配置
import sensors from '@/js_sdk/Sensorsdata-UniPlugin-JS/index.js'; //埋点
var server_url ="https://m.qxdaojia.com/"
if($config.api_url == "https://m.qxdaojia.com/api/"){
server_url = "https://scdata.qxdaojia.com/sa?project=product"
} else if ($config.api_url == 'https://day.m.qxdaojia.com/api/'){
server_url = "https://scdata.qxdaojia.com/sa?project=default"
}
sensors.setPara({
server_url: server_url, //数据上报地址 必填 @Platform All
show_log: true, //日志打印 @Platform All
name:'sensors', //参考小程序文档 @Platform 小程序
autoTrack: {
appLaunch: true, // 默认为 true,false 则关闭 $MPLaunch 事件采集
appShow: true, // 默认为 true,false 则关闭 $MPShow 事件采集
appHide: true, // 默认为 true,false 则关闭 $MPHide 事件采集
pageShow: true, // 默认为 true,false 则关闭 $MPViewScreen 事件采集
pageShare: true, // 默认为 true,false 则关闭 $MPShare 事件采集
mpClick: true, // 默认为 false,true 则开启 $MPClick 事件采集
mpFavorite: true, // 默认为 true,false 则关闭 $MPAddFavorites 事件采集
pageLeave: false // 默认为 false, true 则开启 $MPPageLeave事件采集
},
// #ifdef H5
heatmap: {
//是否开启点击图,default 表示开启,自动采集 $WebClick 事件,可以设置 'not_collect' 表示关闭。
clickmap:'default',
//是否开启触达图,not_collect 表示关闭,不会自动采集 $WebStay 事件,可以设置 'default' 表示开启。
scroll_notice_map:'default',
collect_tags:{
div: true,
img: true
},
} ,
// #endif
app_flush_interval: 15000, // 设置两次数据发送的最小时间间隔 @Platform Android&iOS
app_flush_bulkSize: 100, // 设置本地缓存日志的最大条目数,最小 50 条 @Platform Android&iOS
app_flush_network_policy: 30, // 设置 flush 时网络发送策略,默认 3G、4G、WI-FI 环境下都会尝试 flush @Platform Android&iOS
app_session_interval_time: 30000, // Session 时长,若 App 在后台超过设定事件,则认为当前 Session 结束,发送 $AppEnd 事件,单位毫秒 @Platform Andorid
app_data_collect: true ,//是否开启数据采集 @Platform Android
allow_amend_share_path: true // 是否允许修改 onShareAppMessage 里 return 的 path,用来增加(登录 ID,分享层级,当前的 path),在 app onShow 中自动获取这些参数来查看具体分享来源、层级等
});
进行全局注册
globalData: {
sensors: sensors
}
通过使用个gettApp().globalData
获取全局案例。
页面中使用例如: getApp().globalData.sensors.track('ApplyReturnClick',{});
在具体的位置添加事件埋点,以按钮点击时触发事件为例
其中对应的事件名为:BuyProduct; 对应的事件自定义属性为 ProductID 和 UserLevel;
sensors.track("BuyProduct",{ProductID : "Laptop Computer", UserLevel : 3});
当用户注册成功或者登录成功时,需要调用 login 接口
sensors.login("<#登录 id#>");
为了准确记录登录用户的行为信息,建议在以下时机调用一次 login
接口:
注意⚠️:登录接口传入的类型需要字符串类型,切勿传入 Number 类型,否则会导致打包成 iOS App 时登录不生效。
可以在设置全局变量后调用激活接口:
sensors.trackAppInstall({DownloadChannel : "AppStore"});
对于所有事件都需要添加的属性,在设置全局变量后调用 register 方法将属性注册为公共属性
sensors.register({key1:"value1",key2 : "value2"});
setProfile
方法可以设置用户属性,同一个 key 多次设置时,value 值会进行覆盖替换。
sensors.setProfile({key1:"value1",key2:"value2"});
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://shq5785.blog.csdn.net/article/details/125939275
内容来源于网络,如有侵权,请联系作者删除!