程序接口
特别注意:只有调用退出登录方法,才会有游戏时长和活跃用户等指标。一次完整会话链路核心设计有三步:
1、init
2、login
(中间任意消费和自定义事件)
3、logout
程序接口包括 玩家账户相关、付费行为、自定义事件 三种:
玩家登录
此接口需要在初始化之后调用
// 开始登陆
cocosAnalytics.CAAccount.loginStart({
channel: '99999', // 获客渠道,指获取该客户的广告渠道信息
});
// 登陆成功
cocosAnalytics.CAAccount.loginSuccess({
userID: 'dddddddd',
age: 1, // 年龄
sex: 1, // 性别:1为男,2为女,其它表示未知
channel: '99999', // 获客渠道,指获取该客户的广告渠道信息
})
// 登陆失败
cocosAnalytics.CAAccount.loginFailed({
reason: '密码错误' // 失败原因
})
// 退出登陆 (我们已经考虑和完善处理玩家异常登出操作)
cocosAnalytics.CAAccount.logout()
付费行为分析
非实际付费渠道,只是收集付费行为
info.amount,
info.orderID,
info.payType,
info.iapID,
info.currencyType,
info.virtualCurrencyAmount || "0",
info.accountID || "",
info.partner || "",
info.gameServer || "",
info.level || "0",
info.mission || ""
// 开始支付
cocosAnalytics.CAPayment.payBegin({
amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
orderID:'od10001000111', // 订单ID,唯一标识一次交易。
payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
partner:'', // 账户渠道名称 例如:QQ、微信。
gameServer:'艾欧尼亚', // 玩家充值的区服。
level:10, // 玩家充值时的等级。
mission:'第10关' // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
})
// 支付成功
cocosAnalytics.CAPayment.paySuccess({
amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
orderID:'od10001000111', // 订单ID,唯一标识一次交易。
payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
partner:'', // 账户渠道名称 例如:QQ、微信。
gameServer:'艾欧尼亚', // 玩家充值的区服。
level:10, // 玩家充值时的等级。
mission:'第10关' // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
})
// 支付失败
cocosAnalytics.CAPayment.payFailed({
amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
orderID:'od10001000111', // 订单ID,唯一标识一次交易。
payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
partner:'', // 账户渠道名称 例如:QQ、微信。
gameServer:'艾欧尼亚', // 玩家充值的区服。
level:10, // 玩家充值时的等级。
mission:'第10关', // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
reason:'英雄死亡' // 充值失败的原因
})
// 支付取消
cocosAnalytics.CAPayment.payCanceled({
amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
orderID:'od10001000111', // 订单ID,唯一标识一次交易。
payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
partner:'', // 账户渠道名称 例如:QQ、微信。
gameServer:'艾欧尼亚', // 玩家充值的区服。
level:10, // 玩家充值时的等级。
mission:'第10关' // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
})
自定义事件
事件 ID 可以任意填写,事件内容及标签灵活自定义。后台根据事件内定义的标签进行相关统计和漏斗分析。例如:
"evetID":"barrier",
"eventValue":{
"关卡数" : "魔法瓶",
"玩家级别" : "100",
"玩家战力" : 100,
"复活次数" : 100,
}
长度限制: eventid(事件ID) 200;tagkey(标签id) 200 ;tagvalue(标签值) 200。
例子中:”barrier” 为 eventID ; “关卡数” 为 tagkey;”魔法瓶” 为 tagvalue。
自定义事件内置了一些默认模板,包括玩家信息、关卡统计、任务统计、道具统计等,具体可查看 默认模版 部分的文档内容。注意:事件 ID 不可使用关键字:init
、pay
、task
、barrier
、item
、advertising
、role
、virtual
,以免和默认模板的数据产生混淆。
接口中eventValue不能传空值,空值将无法进行后续的统计分析工作。
// 事件开始
// 参数:事件ID(必填), 不得超过30个字符
// 参数:事件内容(必填),不能传空值
cocosAnalytics.CACustomEvent.onStarted("事件ID", {
name: "事件ID",
player1: 1,
player2: 1
});
// 事件完成
// 参数:事件ID(必填), 不得超过30个字符
cocosAnalytics.CACustomEvent.onSuccess("事件ID", {
name: "事件ID",
player1: 1,
player2: 1
});
// 事件取消
// 参数:事件ID(必填), 不得超过30个字符
cocosAnalytics.CACustomEvent.onCancelled("事件ID", {
name: "突袭",
player1: 1,
player2: 1
});
// 事件失败
// 参数:事件ID(必填), 不得超过30个字符
cocosAnalytics.CACustomEvent.onFailed("事件ID", {
name: "突袭",
player1: 1,
player2: 1
}, "战斗异常");