集成 SDK
集成
从 GitHub 上获取 CocosCreator SDK 源码,根据使用的 CocosCreator 版本集成相应的 js 文件。
CocosCreator 3.x
如果您使用的 CocosCreator 版本是 3.x 请将 cocoscreator-game.cjs.min.js 文件放到项目 assets/Script 目录中。
CocosCreator 2.x
如果您使用的 CocosCreator 版本是 2.x 请将 cocoscreator-game.min.js 文件放到项目 assets/Script 目录中。
如果您使用的 CocosCreator 版本是 3.x 请将 cocoscreator-game.cjs.min.js 文件放到项目 assets/Script 目录中。
如果您使用的 CocosCreator 版本是 2.x 请将 cocoscreator-game.min.js 文件放到项目 assets/Script 目录中。
引用
在需要采集数据的页面引用 js 头文件。
// CocosCreator 2.x
import sensors from './cocoscreator-game.min.js'
// CocosCreator 3.x
import sensors from './cocoscreator-game.cjs.min.js'
配置初始化参数
引入 SDK 后,可通过 setPara() 配置 SDK 初始化参数。
// 以 CocosCreator 2.x 为例
import sa from './cocoscreator-game.js';
sa.setPara({
server_url: '数据接收地址',
show_log: true
});
初始化可选参数
sensors.init
中可选的参数如下
配置名 | 默认值 | 含义 |
---|---|---|
server_url | 空字符串 | 数据接收地址 |
show_log | false | 是否显示日志 |
初始化 SDK
调用 init() 方法来初始化 SDK
// 以 CocosCreator 2.x 为例
import sa from './cocoscreator-game.js';
sa.setPara({
server_url: '数据接收地址',
show_log: true
});
// 初始化 SDK
sensors.init();
SDK 基本配置
配置项目数据接收地址
神策分析 v2.2 以上可如下图所示获取数据接收地址,其他版本获取数据接收地址,可切换文档版本查看:
- 打包发布为微信/ QQ / 字节跳动 等小游戏时,需要在相应的开发者平台配置数据接收地址的域名,详情参考:https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html
代码埋点追踪事件
SDK 初始化后,可通过 - track 方法追踪用户行为事件,并未事件添加自定义属性:
import sa from './cocoscreator-game.js'
sa.track('click',{
name: '点击'
});
设置事件公共属性
对于所有事件都需要添加的属性,初始化 SDK 后,可使用 - registerApp: 将属性注册为公共属性:
import sa from './cocoscreator-game.js'
// 调用自定义埋点 API
var p = {"AppName":"cocos"}
sa.registerApp(p);
公共属性会保存在 App 本地缓存中,可以通过 - clearAppRegister: 删除已设置的事件公共属性。
设置用户属性
- setProfile: 方法可以设置用户属性,同一个 key 多次设置时,value 值会进行覆盖替换:
var p = {"age":5}
sa.setProfile(p)
保留初次用户属性
对于需要保证只有首次设置时有效的属性,如用户首次充值金额、首次设置的昵称等,可以使用 -setOnceProfile: 接口进行记录。与 - setProfile: 方法不同的是,如果被设置的用户属性已存在,则这条记录会被忽略而不会覆盖已有数据,如果属性不存在则会自动创建:
// 设定用户 AdSource 渠道为为 "App Store"
var p = {"AdSource":"App Store"}
sa.setOnceProfile(p)
用户登录
当用户注册成功或者进行登录时,需要调用SDK 的 - login: 接口:
sa.login("用户登录 ID");
为了准确记录登录用户的行为信息,建议在以下时机各调用一次 - login: 接口:
· 用户在注册成功时 · 用户登录成功时 · 已登录用户每次启动 App 时
Native 支持
Android Native 支持
根据您使用的 CocosCreator 使用版本,按照下面步骤配置 Android 工程。
CocosCreator 2.x 版本
集成原生 SDK
请在项目目录下 /build/jsb-link/frameworks/runtime-src/proj.android-studio/app/build.gradle 中集成神策原生 SDK 依赖
dependencies {
// 添加 Sensors Analytics SDK 依赖
implementation 'com.sensorsdata.analytics.android:SensorsAnalyticsSDK:6.0.0'
}
CocosCreator SDK 使用了延迟初始化,需要引用 v6.0.0 及以上版本的原生 SDK
配置桥接文件
请在项目目录下的 /build/jsb-link/frameworks/runtime-src/proj.android-studio/app/src 的 java 工作目录中,将桥接文件 CCSensorsDataAPI.java 复制到目录下
并在与 scr 目录同级的 proguard-rules.pro 文件中,添加混淆
-keep public class com.cocos.game.CCSensorsDataAPI {*;}
CocosCreator 3.x 版本
集成原生 SDK
请在项目目录下 native/engine/android/app/build.gradle 中集成神策原生 SDK 依赖
dependencies {
// 添加 Sensors Analytics SDK 依赖
implementation 'com.sensorsdata.analytics.android:SensorsAnalyticsSDK:6.0.0'
}
CocosCreator SDK 使用了延迟初始化,需要引用 v6.0.0 及以上版本的原生 SDK
配置桥接文件
请在项目目录下的 native/engine/android/app/src 的 java 工作目录中,将桥接文件 CCSensorsDataAPI.java 复制到目录下
并在与 scr 目录同级的 proguard-rules.pro 文件中,添加混淆
-keep public class com.cocos.game.CCSensorsDataAPI {*;}
iOS Native 支持
根据您使用的 CocosCreator 使用版本,按照下面步骤配置 iOS 工程。
CocosCreator 2.x
添加 iOS 插件文件
构建 iOS 项目后会生成对应的 iOS 工程,使用 Xcode 打开 iOS 工程,添加神策 iOS 插件文件。
配置 ARC 编译标记
CocosCreator 3.x
添加 iOS 插件文件
首次构建 iOS 项目后会生成 ./native/engine/ 目录,将神策 iOS 插件文件拷贝到 ./native/engine/ios/ 目录中。
配置 CMakeLists.txt
打开 ./native/engine/ios/CMakeLists.txt 文件,开始配置。
添加源文件引用及 ARC 编译标记
# 找到这行代码
list(APPEND PROJ_SOURCES
${CMAKE_CURRENT_LIST_DIR}/AppDelegate.mm
${CMAKE_CURRENT_LIST_DIR}/AppDelegate.h
${CMAKE_CURRENT_LIST_DIR}/service/SDKWrapper.m
${CMAKE_CURRENT_LIST_DIR}/service/SDKWrapper.h
${CMAKE_CURRENT_LIST_DIR}/main.m
${CMAKE_CURRENT_LIST_DIR}/ViewController.mm
${CMAKE_CURRENT_LIST_DIR}/ViewController.h
${UI_RESOURCES}
)
# 1. 添加源文件引用
list(APPEND PROJ_SOURCES
${CMAKE_CURRENT_LIST_DIR}/CCSensorsDataAPI.h
${CMAKE_CURRENT_LIST_DIR}/CCSensorsDataAPI.mm
${CMAKE_CURRENT_LIST_DIR}/SensorsAnalyticsSDK.framework
)
# 2. 添加 ARC 编译标记
set_source_files_properties(
${CMAKE_CURRENT_LIST_DIR}/CCSensorsDataAPI.mm
PROPERTIES COMPILE_FLAGS -fobjc-arc
)
链接库
# 找到这行代码
target_link_libraries(${LIB_NAME} cocos2d)
# 添加如下代码(链接 framework)
target_link_libraries(${LIB_NAME} ${CMAKE_CURRENT_LIST_DIR}/SensorsAnalyticsSDK.framework)
配置完成后,需要使用 Cocos Creator 重新构建,重新构建后,配置的内容才生效。
开启 Native 支持
初始化 SDK 时,在 setPara 中加入 enable_native: true,即可开启 Native 支持。
sa.setPara({ server_url: '数据接收地址',
show_log: true,
app_start:true, //Android、iOS 支持启动事件
app_end:true, //Android、iOS 支持退出事件
enable_native:true, // 支持 native 数据采集
});
sa.init();