SDK-事件上报/归因

更新时间:2026-06-06 12:00:00OSDK

trackEvent

trackEvent(eventName: string, eventData?: Record<string, any>): void

说明:用于上报事件,基本用法:

  • 广告归因事件有三个事件名必须是:playerlogin、rewardedvideoadshow、rewardedvideoadclose,除此以外其他均为自定义事件名,可以自定义事件名称。
  • 在调用 sdk.setConfig() 前也可以调用 sdk.trackEvent(),只不过这时上报的事件数据中没有:user_id\openid\unionid\nickname\ab_test_id 等字段
// 以下事件仅为示例参考,具体上报事件请根据各游戏的埋点 Excel 来

// 玩家登录
sdk.trackEvent('playerlogin', {
  // 可增加自定义字段
});

// 激励视频广告展示
sdk.trackEvent('rewardedvideoadshow', {
  adunitid: 'adunit-xxxxxxxx', // 广告位 id
  adposition: 'top_banner' // 广告位置,标识同一adunitid在不同位置使用
});

// 激励视频广告关闭
sdk.trackEvent('rewardedvideoadclose', {
  adunitid: 'adunit-xxxxxxxx',
  adposition: 'top_banner', // 广告位置,标识同一adunitid在不同位置使用
  isended: '1',
  isrewardgranted: '1',
  viewdurationseconds: '20',
  totaldurationseconds: '20'
});

// 自定义事件,小游戏内的按钮点击行为等自定义事件名
sdk.trackEvent('home_btn_share_click', {
  // 可增加自定义字段
});

sdk.trackEvent() 方法允许传入自定义的事件名和自定义的 json 参数,事件名可根据业务场景自定义,json 参数则需要和埋点 Excel 中事件字段对齐命名!

另外 SDK 会自动采集\计算系统字段,系统字段的优先级更高,会覆盖掉 json 参数中自定义的字段。json 参数中应避免使用以下的系统字段(不区分大小写):

vGameAppId, dtEventTime, timestamp, platId, traceId, clientVersion, systemSoftware, systemHardware, network, screenWidth, screenHeight, density, memory, sdkVersion, minigame_channel, req_id, clue_token, click_id, callback, trackid, minigame_platid, cd_extendInfo,vRoleID、vRoleName、ABTestSolutionNumber、wx_openid、unionid

另外也请勿使用和系统事件相同的命名:

OSDK_APP_LAUNCH,OSDK_APP_ON_SHOW,OSDK_APP_ON_HIDE,OSDK_APP_ON_TICK,OSDK_APP_ON_ADD_TO_FAVORITES,OSDK_TUTORIAL_FINISH,OSDK_SHARE,OSDK_REGISTER,OSDK_PAYMENT,OSDK_EXPERIMENT

getAttributionParams

getAttributionParams(): AttributionParams

说明:用于获取广告归因参数,包含小游戏的广告来源媒体渠道信息,业务方可获取后用于后续归因计算。此方法非必须,请按需调用。

基本用法:

const attributionParams = sdk.getAttributionParams();
console.log('获取广告归因参数', attributionParams);

reportError

reportError(eventName: string, eventData?: Record<string, any>): void

上报错误日志到CLS,参数与trackEvent方法相同。

onRegister

onRegister(): void

说明:用于玩家注册时,进行事件上报。

onShare

onShare(eventData?: Record<string, any>): void

说明:用于玩家分享消息/朋友圈时,进行事件上报。

eventData格式同上trackEvent方法中的eventData参数

onPayment

onPayment(eventData?: Record<string, any>): void

说明:用于玩家付费时,进行事件上报。

eventData格式同上trackEvent方法中的eventData参数

onTutorialFinish

onTutorialFinish(eventData?: Record<string, any>): void

说明:用于玩家完成新手教程时,进行事件上报。

eventData格式同上trackEvent方法中的eventData参数

相关文档