uni-app plus.statistic.eventTrig 的 value 不支持空字符串或空对象 且不支持友盟「计算事件」

uni-app plus.statistic.eventTrig 的 value 不支持空字符串或空对象 且不支持友盟「计算事件」

信息类型 详情
产品分类 HTML5+
HBuilderX版本号 3.1.10
手机系统 Android
手机系统版本号 Android 11
手机厂商 小米
手机机型 MI 8
打包方式 云端

示例代码:

plus.statistic.eventTrig('market_note', '') // 需求是计数型埋点

操作步骤:

plus.statistic.eventTrig('market_note', '')

预期结果:

计算事件正常触发

实际结果:

计算事件未正常触发

bug描述:

plus.statistic.eventTrig 的 value 不支持空字符串或空对象,且不支持友盟「计算事件」  

Image


更多关于uni-app plus.statistic.eventTrig 的 value 不支持空字符串或空对象 且不支持友盟「计算事件」的实战教程也可以访问 https://www.itying.com/category-93-b0.html

21 回复

自己实际测试

建议:2个都用因为目前UNI统计只能看数量看不到自定义参数 说明:eventValue 使用默认值 { type: ‘count’ } 是我自己用来表示计数的 注意:必须自定义基座打包或者云打包才可以,否则无法绑定正确的appkey

plus.statistic.eventTrig 的 value 目前必须是非空对象
友盟上自定义事件类型必须配置成多参数类型事件

/**

  • 埋点统计
  • @param {String} eventId 事件ID
  • @param {Object} eventValue 事件参数
    */
    function report(eventId = ‘’, eventValue = { type: ‘count’ }) {
    if (!eventId) return
    try {
    // UNI统计
    uni.report(eventId, eventValue)
    // 友盟统计
    plus.statistic.eventTrig(eventId, eventValue)
    } catch (e) {
    console.log(e)
    }
    } 配置例子

实际结果

更多关于uni-app plus.statistic.eventTrig 的 value 不支持空字符串或空对象 且不支持友盟「计算事件」的实战教程也可以访问 https://www.itying.com/category-93-b0.html


请问大佬 我这边ios自定义事件无法统计 是友盟或ios有什么特殊配置吗?

回复 ZHANGHANG: 解决了吗

贴一下配置,其他没了,友盟上面有个事件上报时机的调整配置,分2种的,一个是第二次打开后上报前一次的数据,具体上友盟看 安卓和iOS必须分开统计

配置没有问题 ios其他统计都正常 唯独自定义事件统计不到

自定义事件有问题,你只能按照我上面写的来,事件类型,只支持 多参数类型事件,并且eventValue 必须是非空对象,不能是空字符串,也不能是空对象,{ type:‘count’} 这种我作为默认值

自定义事件 多参数类型事件 非空字符串、非空对象

自定义事件 多参数类型事件 非空字符串、非空对象

那得找友盟的提工单确认,找uni开发他们也是让找友盟的处理

回复 青阳_1900:嗯嗯 感谢大佬回复

大佬,请问我这么写登录事件对不对?

看着没问题,没数据的话,得看下友盟的上报时机的配置,我记得分成2种的

回复 青阳_1900: 我这个代码是登录了之后才执行,然后我刚刚看了一下现在的发送策略是:启动时发送。

回复 xLzii: 启动时发送指的是,下一次启动时发送,你这次启动的数据这次是不会发送的

回复 xLzii: 会抓包的话,可以抓包看下app的网络请求

回复 青阳_1900: 在自定义事件那里好像数据统计到了。还有大佬你有搞过友盟apptrack的移动广告检测吗?

回复 xLzii: 得让native侧对ios和安卓接入,并提供交互,前端个人的话就别整了

回复 青阳_1900: 友盟那边移动广告检测的配置 实例代码都是原生ios的吧,uniapp好像没有这块的文档。

回复 xLzii: 都是原生的,uni-app 这块做的很弱,只能做个简单的trace

回复 青阳_1900: 好吧,估计就基本的统计功能可以弄。谢谢大佬

根据友盟统计规范,eventTrig 方法的 value 参数必须为有效数值类型(Number),不支持空字符串、空对象或非数值类型。对于计数型事件,应传递数值 1 或其他具体数值。

修正方案: 将代码改为:

plus.statistic.eventTrig('market_note', 1)

若需实现友盟的「计算事件」(即带数值统计的事件),value 参数必须为要累加的具体数值,例如:

plus.statistic.eventTrig('purchase', 29.9) // 记录金额统计
回到顶部