"use strict"; var TDAnalytics = require("./tdanalytics.mg.wx.min.js"); function init(appId, ServerUrl) { // TA SDK 配置对象 var config = { appId: appId, // 项目 APP ID serverUrl: ServerUrl, // 上报地址 enableLog: false, autoTrack: { appShow: true, // 自动采集 ta_mg_show appHide: true, // 自动采集 ta_mg_hide } }; // 初始化 TDAnalytics.init(config); // 添加微信的基础属性, 有一些td没加上 var eventData = {}; eventData['wx_version'] = wx.getAccountInfoSync().miniProgram.version; eventData['wx_model'] = wx.getSystemInfoSync().model; eventData['wx_brand'] = wx.getSystemInfoSync().brand; eventData['wx_language'] = wx.getSystemInfoSync().language; eventData['wx_system'] = wx.getSystemInfoSync().system; eventData['wx_platform'] = wx.getSystemInfoSync().platform; eventData['wx_env_version'] = wx.getAccountInfoSync().miniProgram.envVersion; TDAnalytics.setSuperProperties(eventData); } function HCTDAnalytics(req) { if (req["cmd"] != "HCTDAnalytics") { return; } delete req.cmd; const methodName = req["methodName"]; const args = req["args"]; switch (methodName) { case "InitializeSdk": break; case "SetUserId": TDAnalytics.login(args["userId"]); break; case "TrackEvent": const eventName = args["eventName"] delete args.methodName; delete args.eventName; TDAnalytics.track({ eventName: eventName, // 事件名称 properties: args //事件属性 }); break; case "TrackAdRevenue": break; case "SetSuperProperties": delete args.methodName; TDAnalytics.setSuperProperties(args);//设置公共事件属性 break; case "UserSet": delete args.methodName; TDAnalytics.userSet({ properties: args });//设置公共事件属性 break; case "Login": TDAnalytics.login(args["userId"]); break; case "UserSetOnce": delete args.methodName; TDAnalytics.userSetOnce({ properties: args }); break; case "SetLogEnable": break; case "GetDistinctId": return TDAnalytics.getDistinctId(); } return ""; } function trackEvent(eventName, args) { if (eventName == "new_device") { TDAnalytics.trackFirst({ "eventName":eventName, }) console.log("new_device") return } TDAnalytics.track({ eventName: eventName, // 事件名称 properties: args //事件属性 }); } function getDistinctId() { return TDAnalytics.getDistinctId(); } var HaichiMini = { init, HCTDAnalytics, trackEvent, getDistinctId, } wx.HaichiMini = HaichiMini; module.exports = HaichiMini;