ajAnalytics

立即使用

init indentify onEvent

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。

概述

ajAnalytics 本模块封装了极光统计SDK,通过简洁直观的数据报表帮助开发者了解用户的属性和使用情况,优化用户体验,为企业决策提供有效的数据支撑。注:本模块依赖于ajpush模块,需要与ajpush模块最新版本1.1.1及以上一起使用。

模块使用攻略

使用之前须在极光官网(https://www.jiguang.cn)申请开发者账号并创建应用,获取 appkey。

需要配置 config.xml 文件,config.xml添加以下代码,需通过云端编译生效,配置方法如下:

配置示例:

  1. <meta-data name="JPUSH_APPKEY" value="appkey"/>

init

初始化sdk并配置必要参数

init()

params

appKey

  • 类型:字符串
  • 描述:(必须)极光创建App时候得到的appkey。

debug

  • 类型:布尔型
  • 描述:(可选)设置是否开启debug模式。true则会打印更多的日志信息,默认是false。

crashlog

  • 类型:布尔型
  • 描述:(可选)开启crashlog日志上报,true要上报,默认为false。

period

  • 类型:数值型
  • 描述:(可选)周期,单位秒,最小10秒,最大1天,超出范围会打印调用失败日志。传0表示统计数据即时上报,默认0。

channel

  • 类型:字符串
  • 描述:(必须)希望配置的channel。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. cmd:"",//init;
  3. code:0 //初始化成功
  4. result:'success'
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:
  4. //-1(未知错误),
  5. //0(成功)
  6. }

示例代码

  1. var param = {
  2. debug:false,
  3. crashlog:false,
  4. period:0,
  5. channel:'mychannel',
  6. appKey:"your appKey"
  7. };
  8. ajAnalytics = api.require('ajAnalytics');
  9. ajAnalytics.init(param, function(ret, err){
  10. console.log(JSON.stringify(ret));
  11. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

identify

登记账户信息

identify()

params

account

  • 类型:字符串
  • 描述:(必须)用户唯一id,可以根据需要传入业务中的userid等。

attrs

  • 类型:JSON 对象
  • 描述:(可选项)扩展参数,可以添加任意字符串的key,value,最多添加10个。
  • 内部字段:
  • {
    • k1: “v1”,
    • k2: “v2”,
    • k3:”v3”
  • }

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. cmd:"identify",;
  3. code:0 //成功
  4. result:'identify success'
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:
  4. //-1(未知错误),
  5. //0(成功)
  6. }

示例代码

  1. var ajAnalytics = api.require('ajAnalytics');
  2. var param = {
  3. account:"account"+ ~~(Math.random()*10000),
  4. attrs:{"k1":"v1","k2":"v2","k3":"v3"}
  5. };
  6. ajAnalytics.identify(param, function(ret, err){
  7. alert(JSON.stringify(ret));
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

onEvent

记录自定义事件

onEvent()

params

eventType

  • 类型:字符串
  • 描述:(必须)事件模型,支持count(计数事件)、calculate(计算事件)、register(注册事件)、login(登录事件)、browse(浏览事件)、purchase(购买事件),默认是count(计数事件)。

attrs

  • 类型:JSON 对象
  • 描述:(可选项)扩展参数,可以添加任意字符串的key,value,最多添加10个。
  • 内部字段:
  • {
    • k1: “v1”,
    • k2: “v2”,
    • k3:”v3”
  • }

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. cmd:"onEvent",
  3. code:0, //成功
  4. result:'success'
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:
  4. //-1(未知错误),
  5. //0(成功)
  6. }

示例代码

  1. /*以下是各个事件传参格式,参数意义参考极光文档:https://docs.jiguang.cn/janalytics/client/android_api/
  2. var param = {
  3. eventType:"login",//LoginEvent(登录事件)
  4. method:"qq",//登录方式(非空)
  5. success:true,//登录是否成功(非空)
  6. attrs:{"k11":"v11","k2":"v2","k3":"v3"}
  7. };
  8. var param = {
  9. eventType:"register",//RegisterEvent(注册事件)
  10. method:"qq",//注册方式(非空)
  11. success:true,//注册是否成功(非空)
  12. attrs:{"k11":"v11","k2":"v2","k3":"v3"}
  13. };
  14. var param = {
  15. eventType:"purchase",//PurchaseEvent(购买事件)
  16. id:'good001',
  17. name:"goodname001",
  18. type:"goodtype",
  19. count:10,//购买数量
  20. success:true,
  21. attrs:{"k11":"v11","k2":"v2","k3":"v3"}
  22. };
  23. var param = {
  24. eventType:"browse",//BrowseEvent(浏览事件)
  25. eventId:'eventId001',//浏览内容id
  26. name:"bname",//内容名称(非空)
  27. type:"btype",//内容类型
  28. duration:60,//浏览时长,单位秒
  29. attrs:{"k11":"v11","k2":"v2","k3":"v3"}
  30. };
  31. var param = {
  32. eventType:"calculate",//CalculateEvent(计算事件)
  33. eventId:'eventId001',//事件Id(非空)
  34. value:99.99,//事件的值(非空)
  35. attrs:{"k11":"v11","k2":"v2","k3":"v3"}
  36. };
  37. var param = {
  38. eventType:"count",//CountEvent(计数事件)
  39. eventId:'eventId001'//事件Id(非空),
  40. attrs:{"k11":"v11","k2":"v2","k3":"v3"}
  41. };
  42. */
  43. var ajAnalytics = api.require('ajAnalytics');
  44. var param = {
  45. eventType:"count",
  46. eventId:'eventId001',//事件Id(非空)
  47. attrs:{"k11":"v11","k2":"v2","k3":"v3"}
  48. };
  49. ajAnalytics.onEvent(param, function(ret, err){
  50. alert(JSON.stringify(ret));
  51. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本