程序接口

特别注意:只有调用退出登录方法,才会有游戏时长和活跃用户等指标。一次完整会话链路核心设计有三步:

1、init
2、login

(中间任意消费和自定义事件)

3、logout

程序接口包括 玩家账户相关付费行为自定义事件 三种:

玩家登录

此接口需要在初始化之后调用

  1. // 开始登陆
  2. cocosAnalytics.CAAccount.loginStart({
  3. channel: '99999', // 获客渠道,指获取该客户的广告渠道信息
  4. });
  5. // 登陆成功
  6. cocosAnalytics.CAAccount.loginSuccess({
  7. userID: 'dddddddd',
  8. age: 1, // 年龄
  9. sex: 1, // 性别:1为男,2为女,其它表示未知
  10. channel: '99999', // 获客渠道,指获取该客户的广告渠道信息
  11. })
  12. // 登陆失败
  13. cocosAnalytics.CAAccount.loginFailed({
  14. reason: '密码错误' // 失败原因
  15. })
  16. // 退出登陆 (我们已经考虑和完善处理玩家异常登出操作)
  17. cocosAnalytics.CAAccount.logout()

付费行为分析

非实际付费渠道,只是收集付费行为

  1. info.amount,
  2. info.orderID,
  3. info.payType,
  4. info.iapID,
  5. info.currencyType,
  6. info.virtualCurrencyAmount || "0",
  7. info.accountID || "",
  8. info.partner || "",
  9. info.gameServer || "",
  10. info.level || "0",
  11. info.mission || ""
  1. // 开始支付
  2. cocosAnalytics.CAPayment.payBegin({
  3. amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
  4. orderID:'od10001000111', // 订单ID,唯一标识一次交易。
  5. payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
  6. iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
  7. currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
  8. virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
  9. accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
  10. partner:'', // 账户渠道名称 例如:QQ、微信。
  11. gameServer:'艾欧尼亚', // 玩家充值的区服。
  12. level:10, // 玩家充值时的等级。
  13. mission:'第10关' // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
  14. })
  15. // 支付成功
  16. cocosAnalytics.CAPayment.paySuccess({
  17. amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
  18. orderID:'od10001000111', // 订单ID,唯一标识一次交易。
  19. payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
  20. iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
  21. currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
  22. virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
  23. accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
  24. partner:'', // 账户渠道名称 例如:QQ、微信。
  25. gameServer:'艾欧尼亚', // 玩家充值的区服。
  26. level:10, // 玩家充值时的等级。
  27. mission:'第10关' // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
  28. })
  29. // 支付失败
  30. cocosAnalytics.CAPayment.payFailed({
  31. amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
  32. orderID:'od10001000111', // 订单ID,唯一标识一次交易。
  33. payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
  34. iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
  35. currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
  36. virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
  37. accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
  38. partner:'', // 账户渠道名称 例如:QQ、微信。
  39. gameServer:'艾欧尼亚', // 玩家充值的区服。
  40. level:10, // 玩家充值时的等级。
  41. mission:'第10关', // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
  42. reason:'英雄死亡' // 充值失败的原因
  43. })
  44. // 支付取消
  45. cocosAnalytics.CAPayment.payCanceled({
  46. amount:100, // 现金金额或现金等价物的额度。例如1元传入100,100元则传入10000
  47. orderID:'od10001000111', // 订单ID,唯一标识一次交易。
  48. payType:'支付宝', // 支付方式。如:支付宝、苹果iap、银联支付、爱贝支付聚合等。
  49. iapID:'大礼包', // 商品ID。玩家购买的充值包类型。例如:人民币15元600虚拟币包
  50. currencyType:'CNY', // 请使用ISO 4217中规范的3位字母代码标记货币类型。充值货币类型
  51. virtualCurrencyAmount:1000, // 充值获得的虚拟币额度。
  52. accountID:'user1001', // 消费的账号 苹果是appleid 安卓是??
  53. partner:'', // 账户渠道名称 例如:QQ、微信。
  54. gameServer:'艾欧尼亚', // 玩家充值的区服。
  55. level:10, // 玩家充值时的等级。
  56. mission:'第10关' // 玩家充值时所在的关卡或任务。亦可传入一个玩家打到的最高关卡。
  57. })

自定义事件

事件 ID 可以任意填写,事件内容及标签灵活自定义。后台根据事件内定义的标签进行相关统计和漏斗分析。例如:

  1. "evetID":"barrier",
  2. "eventValue":{
  3. "关卡数" : "魔法瓶",
  4. "玩家级别" : "100",
  5. "玩家战力" : 100,
  6. "复活次数" : 100,
  7. }

长度限制: eventid(事件ID) 200;tagkey(标签id) 200 ;tagvalue(标签值) 200。

例子中:”barrier” 为 eventID ; “关卡数” 为 tagkey;”魔法瓶” 为 tagvalue。

自定义事件内置了一些默认模板,包括玩家信息、关卡统计、任务统计、道具统计等,具体可查看 默认模版 部分的文档内容。注意:事件 ID 不可使用关键字:initpaytaskbarrieritemadvertisingrolevirtual,以免和默认模板的数据产生混淆。

接口中eventValue不能传空值,空值将无法进行后续的统计分析工作。

  1. // 事件开始
  2. // 参数:事件ID(必填), 不得超过30个字符
  3. // 参数:事件内容(必填),不能传空值
  4. cocosAnalytics.CACustomEvent.onStarted("事件ID", {
  5. name: "事件ID",
  6. player1: 1,
  7. player2: 1
  8. });
  1. // 事件完成
  2. // 参数:事件ID(必填), 不得超过30个字符
  3. cocosAnalytics.CACustomEvent.onSuccess("事件ID", {
  4. name: "事件ID",
  5. player1: 1,
  6. player2: 1
  7. });
  1. // 事件取消
  2. // 参数:事件ID(必填), 不得超过30个字符
  3. cocosAnalytics.CACustomEvent.onCancelled("事件ID", {
  4. name: "突袭",
  5. player1: 1,
  6. player2: 1
  7. });
  1. // 事件失败
  2. // 参数:事件ID(必填), 不得超过30个字符
  3. cocosAnalytics.CACustomEvent.onFailed("事件ID", {
  4. name: "突袭",
  5. player1: 1,
  6. player2: 1
  7. }, "战斗异常");