微信游戏接入腾讯MAT

it2022-05-05  155

新建mta_analysis.js文件,拷贝如下代码(根据小程序接入mat改写):

var MTA_CONFIG = {  "appID":"500013092", "eventID":"500015824", // 高级功能-自定义事件统计ID,配置开通后在初始化处填写  api_base: "https://pingtas.qq.com/pingd",  prefix: "_mta_",  version: "1.3.5",  stat_share_app: 1,  stat_pull_down_fresh: !1,  stat_reach_bottom: !1 }; function getNetworkType(a) {  wx.getNetworkType({   success: function(b) {    a(b.networkType)   }  }) } function getSystemInfo() {  var a = wx.getSystemInfoSync();  return {   adt: encodeURIComponent(a.model),   scl: a.pixelRatio,   scr: a.windowWidth + "x" + a.windowHeight,   lg: a.language,   fl: a.version,   jv: encodeURIComponent(a.system),   tz: encodeURIComponent(a.platform)  } } function getUID() {  try {   return wx.getStorageSync(MTA_CONFIG.prefix + "auid")  } catch (a) {} } function setUID() {  try {   var a = getRandom();   wx.setStorageSync(MTA_CONFIG.prefix + "auid", a);   return a  } catch (b) {} } function getSID() {  try {   return wx.getStorageSync(MTA_CONFIG.prefix + "ssid")  } catch (a) {} } function setSID() {  try {   var a = "s" + getRandom();   wx.setStorageSync(MTA_CONFIG.prefix + "ssid", a);   return a  } catch (b) {} } function getRandom(a) {  for (var b = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], c = 10; 1 < c; c--) {   var d = Math.floor(10 * Math.random()),    e = b[d];   b[d] = b[c - 1];   b[c - 1] = e  }  for (c = d = 0; 5 > c; c++) d = 10 * d + b[c];  return (a || "") + (d + "" + +new Date) } function getPagePath() {  try {   var    b = "/";   return b  } catch (c) {   console.log("get current page path error:" + c)  } } function getMainInfo() {  var a = {   dm: "wechat.apps.xx",   url: getPagePath(),   pvi: "",   si: "",   ty: 0  };  a.pvi = function() {   var b = getUID();   b || (b = setUID(), a.ty = 1);   return b  }();  a.si = function() {   var a = getSID();   a || (a = setSID());   return a  }();  return a } function getBasicInfo() {  var a = getSystemInfo();  getNetworkType(function(a) {   try {    wx.setStorageSync(MTA_CONFIG.prefix + "ntdata", a)   } catch (c) {}  });  a.ct = wx.getStorageSync(MTA_CONFIG.prefix + "ntdata") || "4g";  return a } function getExtentInfo() {  var a = MTA.Data.userInfo;  var b = [],   c;  for (c in a) a.hasOwnProperty(c) && b.push(c + "=" + a[c]);  a = b.join(";");  return {   r2: MTA_CONFIG.app_id,   r4: "wx",   ext: "v=" + MTA_CONFIG.version + (null !== a && "" !== a ? ";ui=" + encodeURIComponent(a) : "")  } } var MTA = {  App: {   init: function(a) {    "appID" in a && (MTA_CONFIG.app_id = a.appID);    "eventID" in a && (MTA_CONFIG.event_id = a.eventID);    "statShareApp" in a && (MTA_CONFIG.stat_share_app = a.statShareApp);    "statPullDownFresh" in a && (MTA_CONFIG.stat_pull_down_fresh = a.statPullDownFresh);    "statReachBottom" in a && (MTA_CONFIG.stat_reach_bottom = a.statReachBottom);    setSID();    "lauchOpts" in a && (MTA.Data.lanchInfo = a.lauchOpts, MTA.Data.lanchInfo.landing = 1)   }  },  Page: {   init: function() {    var a = { onShow: true, __route__: "pages/index/index" };    a.onShow &&     ! function() {      var b = a.onShow;      a.onShow = function() {       MTA.Page.stat();       b.call(this, arguments)      }     }();    MTA.Page.stat();    MTA_CONFIG.stat_pull_down_fresh && a.onPullDownRefresh && ! function() {     var b = a.onPullDownRefresh;     a.onPullDownRefresh = function() {      MTA.Event.stat(MTA_CONFIG.prefix + "pulldownfresh", {       url: a.__route__      });      b.call(this, arguments)     }    }();    MTA_CONFIG.stat_reach_bottom && a.onReachBottom && ! function() {     var b = a.onReachBottom;     a.onReachBottom = function() {      MTA.Event.stat(MTA_CONFIG.prefix + "reachbottom", {       url: a.__route__      });      b.call(this, arguments)     }    }();    MTA_CONFIG.stat_share_app && a.onShareAppMessage && ! function() {     var b = a.onShareAppMessage;     a.onShareAppMessage = function() {      MTA.Event.stat(MTA_CONFIG.prefix + "shareapp", {       url: a.__route__      });      return b.call(this, arguments)     }    }()   },   stat: function() {    if ("" != MTA_CONFIG.app_id) {     var a = [],      b = getExtentInfo(),      c = [getMainInfo(), b, getBasicInfo()];     MTA.Data.lanchInfo && (c.push({      ht: MTA.Data.lanchInfo.scene,      rdm: "/",      rurl: MTA.Data.lanchInfo.path     }), MTA.Data.lanchInfo.query && MTA.Data.lanchInfo.query._mta_ref_id && c.push({      rarg: MTA.Data.lanchInfo.query._mta_ref_id     }),      1 == MTA.Data.lanchInfo.landing && (b.ext += ";lp=1", MTA.Data.lanchInfo.landing = 0));     c.push({      rand: +new Date     });     b = 0;     for (var d = c.length; b < d; b++)      for (var e in c[b]) c[b].hasOwnProperty(e) && a.push(e + "=" + ("undefined" == typeof c[b][e] ? "" : c[b][e]));     wx.request({      url: MTA_CONFIG.api_base + "?" + a.join("&").toLowerCase()     })    }   }  },  Event: {   stat: function(a, b) {    if ("" != MTA_CONFIG.event_id) {     var c = [],      d = getMainInfo(),      e = getExtentInfo();     d.dm = "wxapps.click";     d.url = a;     e.r2 = MTA_CONFIG.event_id;     var f = "undefined" === typeof b ? {} : b;     var k = [],      g;     for (g in f) f.hasOwnProperty(g) &&      k.push(encodeURIComponent(g) + "=" + encodeURIComponent(f[g]));     f = k.join(";");     e.r5 = f;     f = 0;     d = [d, e, getBasicInfo(), {      rand: +new Date     }];     for (e = d.length; f < e; f++)      for (var h in d[f]) d[f].hasOwnProperty(h) && c.push(h + "=" + ("undefined" == typeof d[f][h] ? "" : d[f][h]));     wx.request({      url: MTA_CONFIG.api_base + "?" + c.join("&").toLowerCase()     })    }   }  },  Data: {   userInfo: null,   lanchInfo: null  } }; module.exports = MTA;

游戏启动的时候初始化:

var mta = require('mta_analysis'); var options = this.wxUtils.getLaunchOptionsSync(); //微信wx.getLaunchOptionsSync()接口封装  mta.App.init({       "appID": "500013092",       "eventID": "500015824",       "lauchOpts": options,       "statShareApp": true,       "autoReport": true  });  mta.Page.init(); //mta.Event.stat("ico_search", {"query":"特斯拉"}); Utils.mtaEventStart = function(name, opt) { if (!name) { return; } mta.Event.stat(name, opt); }

 


最新回复(0)