神策分析帮助中心 技术指南 客户端 SDK 小程序 SDK Current: 小游戏 SDK 使用指南 小游戏 SDK 使用指南 在使用前,请先阅读数据模型SDK 更新日志,可参考 Release Notes 1. 集成神策分析 SDK Cocos Creator 引擎小游戏 LayaAir 引擎小游戏 Egret 引擎小游戏 1.1. 引入 SDK从 GitHub 上获取 Cocos Creator SDK 源码将 SDK ( cocoscreator-game.min.js ) 文件放入 assets/Script 目录中在需要采集埋点数据的脚本中通过 import 引入 SDK 文件 import sensors from './cocoscreator-game.min.js' JS 1.2. 配置初始化参数引入 SDK 后,可通过 setPara() 配置 SDK 初始化参数: sensors.setPara({ server_url: '您的数据接收地址', // 是否允许控制台打印查看埋点数据(建议开启查看) show_log: true, }); JS 1.3. 初始化 SDK调用 init() 方法来初始化 SDK: // 引入 SDK import sensors from './cocoscreator-game.min.js' // 配置 SDK 参数 sensors.setPara({ server_url: '您的数据接收地址', // 是否允许控制台打印查看埋点数据(建议开启查看) show_log: true, }); // 初始化 SDK sensors.init(); JS 1.1. 引入 SDK从 GitHub 上获取 LayaAir SDK 源码将 SDK ( layaair-game.min.js ) 文件放入 assets/Script 目录中使用编辑器打开任意文件,在 Script 目录下 main.js 文件中通过 import 引入 SDK 文件 import sensors from './layaair-game.min.js' JS 1.2. 配置初始化参数引入 SDK 后,可通过 setPara() 配置 SDK 初始化参数: sensors.setPara({ server_url: '您的数据接收地址', // 是否允许控制台打印查看埋点数据(建议开启查看) show_log: true, }); JS 1.3. 初始化 SDK调用 init() 方法来初始化 SDK: // 引入 SDK import sensors from './cocoscreator-game.min.js' // 配置 SDK 参数 sensors.setPara({ server_url: '您的数据接收地址', // 是否允许控制台打印查看埋点数据(建议开启查看) show_log: true, }); class Main{ constructor(){ ... // 初始化 SDK, 建议将sensors.init() 调用放在 Main 的构造函数最底部执行,保证 Laya 初始化完成后再初始化神策 LayaAir SDK sensors.init(); } } JS 1.1. 引入 SDK从 GitHub 上获取 Egret SDK 源码将 SDK ( egret-game.min.js ) 文件放入项目目录中使用编辑器打开小游戏项目,在 src 目录下 Main.ts 文件中通过 import 引入 SDK 文件 import sensors from './egret-game.min.js' JS 1.2. 配置初始化参数引入 SDK 后,可通过 setPara() 配置 SDK 初始化参数: sensors.setPara({ server_url: '您的数据接收地址', // 是否允许控制台打印查看埋点数据(建议开启查看) show_log: true, }); JS 1.3. 初始化 SDK调用 init() 方法来初始化 SDK: // 引入 SDK import sensors from './egret-game.min.js' // 配置 SDK 参数 sensors.setPara({ server_url: '您的数据接收地址', // 是否允许控制台打印查看埋点数据(建议开启查看) show_log: true, }); class Main{ constructor(){ ... // 初始化 SDK, 建议将 sensors.init() 调用放在 Main 的构造函数最底部执行,保证 Egret 初始化完成后再初始化神策 Egret SDK sensors.init(); } } JS 在调用 init() 接口之前,采集的数据被缓存在内存中;调用 init() 接口后,会将缓存的数据通过网络发送出去。 2. SDK 基本配置2.1. 配置项目数据接收地址神策分析 v2.2 以上可如下图所示获取数据接收地址,其他版本获取数据接收地址,可切换文档版本查看: 打包发布为微信/ QQ / 字节跳动 等小游戏时,需要在相应的开发者平台配置数据接收地址的域名,详情参考:https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html 2.2. 设置事件公共属性对于所有事件都需要添加的属性,可在初始化 SDK 前,调用 registerApp() 将属性注册为公共属性: sensors.registerApp({ userLever: 'VIP3', userSex: '男' }); JS 2.3. 用户登录当用户注册成功或者登录成功时,需要调用 login() 方法传入登录 ID: sensors.login("登录 ID"); JS 对于自动登录的用户,可以在 SDK 初始化前,获取登录 ID 并调用 login() 方法。 2.4. 代码埋点追踪事件可通过 track() 方法追踪用户行为事件,并为事件添加自定义属性: import sensors from './sensorsdata.min.js' sensors.track('click',{ name: '点击' }); JS 3. 调试查看事件信息3.1. 事件的触发日志setPara() 配置初始化参数时,通过 show_log: true 打开 Log 功能且 SDK 完成初始化后(即 init() 方法调用后),开发者工具 console 会打印采集的数据信息:3.2. 事件的发送情况事件数据发送成功时,可以在开发者工具的 Network 模块中,可以看到 sa 的请求:4. SDK 可选配置4.1. 设置用户属性setProfile( properties ): 可以设定用户属性,同一个 key 多次设置时,value 值会进行覆盖替换: sensors.setProfile({ email:'xxx@xx', favoriteFruits: ['苹果', '油桃'], subscribers: 7277 }); JS 关于事件属性和用户属性的区别,请参考数据模型用户属性的命名约束,请参考数据格式用户属性其他设置方法,请参考用户属性设置