dplus.init(token/siteid, config, name);
Dplus SDK的初始化,通过此函数实例化一个跟踪对象dplus。
参数:
siteid – {必须} [String] 新用户的Dplus项目siteid,SDK采集的数据将发送到该siteid对应的项目下。
token – {必须} [String] 老用户的Dplus项目token,SDK采集的数据还将发送到该token对应的项目下。
config – {可选} [Object] 自定义配置项,字典格式,用{}
括起来。
name – {可选} [String] 给Dplus跟踪实例命名(通常可以省略)。
示例:
dplus.init("YOUR TOKENYOUR TOKEN or SITEID",{ "disable_cookie": true,
"cross_subdomain_cookie": true
});
dplus.init中的第一个参数填写您的项目token/siteid;第二个参数填写Dplus SDK的统计配置。例如以上示例中:
config 参数详情:
参数名 | 类型 | 默认值 | 描述 |
cross_subdomain_cookie | Boolean | TRUE | 设置cookie是否跨子域 |
true – [默认值] cookie种在网站主域下,这样不同子域的访客都将识别为同一访客。 | |||
false – cookie将种在网站子域名下。 | |||
loaded | Function | null | 设置SDK初始化后的回调函数 |
如果跟踪代码中用到了dplus.get_distinct_id()或dplus.get_property() ——它们需要统计SDK(统计SDK即放在页面之前的基础代码)加载完后才能执行,那么建议将这些方法放到loaded回调函数中。 | |||
例如:dplus.get_property("user_id")如果直接加在页面中,当网络环境较差、统计SDK加载较慢时,该方法很可能引起错误。因此可以将这些方法放在loaded回调函数中,保证统计SDK加载完成后再调用它们: dplus.init("YOUR TOKEN", { loaded: function() { user_id = dplus.get_property("user_id"); } }); | |||
track_timeout | Number | 300 | 设置等待服务器收数响应的最大时间 |
如果您使用了track_links、track_forms、或者track方法的callback参数,那么默认情况下,这些方法发送数据后会、最多等待track_timeout指定的时间,以接收Dplus服务器的响应(然后再进行链接跳转、表单提交、或是执行callback方法),以确保数据发送成功、避免丢数;如果track_timeout之内就收到Dplus服务器的响应,则不会继续等待,而是立即执行调用方法指定的动作。 track_timeout默认为3000ms,您可通过dplus.set_config或dplus.init进行修改。 您也可以在track_links、track_forms、或者track中单独指定等待响应时间,这时调用方法会使用函数里指定的时间,而非track_timeout的值。 | |||
cookie_expiration | Number | 365 | 设置cookie失效时间 默认365天,可通过cookie_expiration进行修改(单位:天)。 注意:由于用户标识(通过dplus.identify设置)、超级属性(通过dplus.register设置)均存储在cookie中,因此cookie失效后,这些内容将自动清空。 |
web_lang | Array | [‘zh’,’en’] | 设置采集数据的语言 默认采集的统计数据只能包含中文和英文(web_lang=['zh','en']),如果出现了其它种类的语言,则会被视作乱码扔掉。 您可通过web_lang更改这一设置,例如以下设置的语言可以包含中文、英文、德文、法文、日文: dplus.init("YOUR TOKEN", {'web_lang':['zh','en','de','fr','ja']}) |
session_timeout | Number | 1800 | 设置会话(session)有效期 访客从进入网站到离开网站的一系列活动记为一次会话(session)。 默认情况下访客来到网站连续30分钟(即1800秒)内无任何活动,则视为本次会话结束。 您可通过session_timeout更改这一设置(单位:秒),例如以下设置的会话有效期为1小时(即3600秒): dplus.init("YOUR TOKEN", {'session_timeout':3600}) |
same_domain_host | Array | [] | 设置站内域名 JavaScript SDK在事件中提供默认属性“最近站外来源(recent_outside_referrer)”,表示用户的这次访问来自站外哪个渠道: 默认情况下,如果触发事件所在页面与其来源页面的域名不同,则认为用户从新的站外渠道进入网站。此时“最近站外来源”更新为当前来源页域名( 即页面referrer);否则“最近站外来源”保持不变。 如果您的网站包含多个不同域名,则可通过same_domain_host设置您的网站域名,例如: dplus.init("YOUR TOKEN",{'same_domain_host':['site1.com','site2.com']}) 这时该设置会对“最近站外来源”的生成规则进行修正——当事件所在页的来源页域名同时满足: 1)与当前页域名不同; 2)不在设置的站内域名中(上例站内域名为['site1.com','site2.com'])。则“最近站外来源”更新为当前来源页域名。 |
dplus.push([function_name, arg1, arg2, …]]);
dplus.push
是调用API的另一种方式:通过传递 方法名 和 方法参数 进行调用。它也需要在统计SDK加载完成后使用,并且效果与API的通用方法完全相同。该方法通常用在需要标准化API调用的场合中(例如代码集成时):
参数:
item – {必须} [Array] [function_name, arg1, arg2, …]
示例1:
dplus.push(['register', { username: "小王" }]);
等价与直接使用register方法:
dplus.register({ username : "小王"
})
示例2:
dplus.push(["track", "提交订单", {product: "连衣裙", money: 100}]);
等价与直接使用track
方法:
dplus.track("提交订单", { product: "连衣裙",
money: 100
});
dplus.disable([event_name1 , event_name2 , …])
关闭当前页面的事件发送:不传参数时,当前页面的所有事件均停止发送;传入事件名称数组时,只有这些事件的数据会停止发送,其它事件发送均不受影响。
参数: item – {可选} [Array] 事件名称数组
示例1:
dplus.disable(); 页面上的所有事件均不发送。
示例2:
dplus.disable([ "点击收藏" , "点击转发" ]); 页面上名为 “点击收藏” 和 “点击转发” 的事件不发送;其它事件均正常发送。
注意:
dplus.disable
需要放在track事件之前才能生效。
该方法只关闭指定事件的发送功能(dplus.track
),其它方法(例如dplus.register
)均正常执行。
dplus.track(event_name, properties, callback, timeout)
跟踪用户行为,发送一个事件。
参数:
eventname – {必须} [String] 自定义事件名称。
properties – {可选} [Object] 随该事件一起发送的事件属性。每个属性包括属性名和属性值;一个事件可以包含多个不同的属性,写成JSON“键-值”对格式。
callback – {可选} [Function] 事件发送后的回调函数。
timeout – {可选} [Number] 发送事件后、等待Dplus服务器响应的最大时间(单位:毫秒):如果在该时间内收到Dplus服务器的响应,则立即执行callback回调函数;如果超过timeout
时间仍无响应,则继续执行callback回调函数(以确保数据发送成功、避免丢数)。不设本参数时,timeout
取全局配置tracktimeout的值:track_timeout
默认为300毫秒,可通过dplus.set_config
或dplus.init
进行修改。 示例:
dplus.track("页面浏览" , {name: "首页"});//event_name="页面浏览", properties={name: "首页"}dplus.track("页面浏览");//没有自定义属性时,properties可以省略
dplus.track("页面浏览" , {name: "首页"}, function(){...});//发送事件"页面浏览"后,回调function(){...}
dplus.track("页面浏览" , {}, function(){...},500);//发送事件"页面浏览"后,最多等待500ms,然后回调function(){...};注意,这种情况下,如果properties为空,需要写上 {} 进行占位
注意:
属性值不能是Object类型,例如: dplus.track(“Click Nav”, {“name” : { “subname” : “cnzz”}}}) ,属性名name
的属性值写成{"subname" : "cnzz"}
是不对的,因为 SDK不会再解析{"subname" : "cnzz"}这个对象。
属性值支持 **Number、String、Boolean、Array **类型
若属性值为 Array 类型,则它只能是简单的一维数组 ,即数组元素类型只能是前三种简单类型(Number、String或Boolean),例如['list_a' , 'list_b']
。
dplus.track_links(query , event_name , properties, timeout);
跟踪发送链接的点击事件。 参数: query – {必须} [String] DOM节点的查询query。
event_name – {必须} [String] 自定义事件名称。
properties – {可选} [String] 事件的自定义属性。每个属性包括属性名和属性值;一个事件可以包含多个不同的属性,写成JSON“键-值”对格式。
timeout – {可选} [Number] 发送事件后、等待Dplus服务器响应的最大时间(单位:毫秒):如果在该时间内收到Dplus服务器的响应,则立即跳到指定链接;如果超过 timeout
时间仍无响应,则页面继续跳转(以确保数据发送成功、避免丢数)。不设本参数时,timeout
取全局配置track_timeout
的值:track_timeout
默认为300毫秒,可通过dplus.set_config
或dplus.init
进行修改。 示例:
例如要跟踪以下HTML里“站长统计”和“全景统计”两个链接的点击:
<div class="category"><i class="star-icon i-tv"></i><a href="http://zhanzhang.cnzz.com/">站长统计</a><span class="split">|</span><a href="http://quanjing.cnzz.com/">全景统计</a></div>
则可以通过track_links
直接跟踪链接的点击:
dplus.track_links('.category a', '点击产品导航');//query='.category a',event_name='点击产品导航'dplus.track_links('.category a', '点击产品导航',{current_url:window.location.href});//event_name='产品导航',properties={current_url:window.location.href}
dplus.track_links('.category a', '点击产品导航',{current_url:window.location.href},500);//发送事件"点击产品导航"后,最多等待500ms,跳到指定的链接
dplus.track_links('.category a', '点击产品导航',null,500);//这种情况下,如果properties为空,则需要写上 {} 进行占位
dplus.track_forms(query, event_name , properties, timeout);
捕获页面表单提交事件。 参数: query – {必须} [String] DOM节点的查询query。
event_name – {必须} [String] 自定义事件名称。
properties – {可选} [Object] 事件的自定义属性。每个属性包括属性名和属性值;一个事件可以包含多个不同的属性,写成JSON“键-值”对格式。
timeout – {可选} [Number] 发送事件后、等待Dplus服务器响应的最大时间(单位:毫秒):如果在该时间内收到Dplus服务器的响应,则立即完成表单提交;如果超过timeout
时间仍无响应,则继续提交表单(以确保数据发送成功、避免丢数)。不设本参数时,timeout
取全局配置track_timeout
的值:track_timeout
默认为300毫秒,可通过dplus.set_config
或dplus.init
进行修改。 示例:
dplus.track_forms("#submit_form", "提交" , {host : location.host});dplus.track_forms("#submit_form", "提交" , {} , 500);//发送事件"提交"后,最多等待500ms,执行表单提交操作;注意,这种情况下,如果properties为空,需要写上 {} 进行占位。
注意:
第一个参数是form表单的CSS选择器(如上例中为id选择器)。注意不要绑定在type为submit的button或者input标签上。
该示例会在表单提交后延迟300ms等待Dplus服务器做出响应;如果超过300ms仍无响应,则浏览器将继续执行提交动作,此时数据很可能发送失败。
因此您可根据网络环境和业务场景,通过dplus.set_config
(或dplus.init
)配置track_timeout
参数,设置合适的track_forms
延迟时间(单位:毫秒)。
dplus.register(properties, days);
给当前用户标记超级属性:这些属性保存在浏览器cookie中,该用户后续触发的所有事件都将自动包含这些属性。如果已经通过dplus.register
标记过同名超级属性,再次调用dplus.register
时,设定的新值会改写旧值。 参数: properties – {必须} [Object] 需要标记的超级属性(每个属性包括属性名和属性值;一个事件可以包含多个不同的属性,写成JSON“键-值”对格式)。
days – {可选} [Number] 该属性在浏览器cookie中的保存天数
示例:
// 用户抵达活动页Landing Page时,将来源 "source" 标记为超级属性dplus.register({'source' : 'google'});
// 用户注册成功时,将姓名 "name" 和年龄"age"标记为超级属性
dplus.register({
'name': 'Tome',
'Account Type': 23
});
dplus.unregister(properties);
删除当前用户的超级属性:传入单个属性名,将删除这个超级属性;传入属性名数组,将会删除数组指定的每个超级属性。
参数: properties – {必须} [String/Array] 需要删除的一个超级属性名(String)、或一组超级属性名(Array)
示例:
dplus.unregister(["source"]);
dplus.get_property(property_name);
返回当前用户超级属性的值。如果指定的超级属性不存在,则返回undefined
。
参数: property_name – {必须} [String] 要获取的超级属性名。
示例:
dplus.get_property("source"); // 获取超级属性"source"的值
dplus.clear();
调用此方法,将删除SDK为当前用户设置的所有cookie值,包括用户标识(distinct_id
)、超级属性等;同时还会生成一个新的distinct_id
。所以调用此方法后再调用dplus.track
,Dplus会认为产生了一个新用户。
注意: 本方法会清除当前用户的统计cookie,因此需要小心使用。建议您根据自己的业务场景适时选用本方法,例如用户退出登录时。
dplus.set_config(config);
设置您的统计配置。
参数: config – {必须} [Object] 统计配置项
示例:
dplus.set_config({track_timeout :500})
config 的参数配置请参看:dplus.init
dplus.get_config(config)
返回当前的统计配置参数值。
参数: config – {必须} [String] 统计配置项名称
示例:
dplus.get_config('token'); // 获取项目token
安智宝是主打效果的安卓应用推广平台。通过安智宝,用户可以通过自助方式 进行应用推广。作为效果性的推广平台,安智宝利用云技术智能的进行渠道匹 配,对渠道的高效利用,节约用户的每一分钱。用户可以精确的控制应用投放 每天的投放量、渠道质量(留存率等),做到覆盖广、活跃度高、控制精准。
Copyright © 2016 - 2020 anzhibao.com . All Right Reserved.
安智宝 版权所有