通过 Adjust Web SDK,您可以在网页应用中记录归因、事件以及更多数据。该指南展示了如何将该 SDK 集成至应用。
1. 添加 SDK 至您的项目
要开始设置,请将 SDK 添加至网页应用。Adjust SDK 可在 CommonJS 和 AMD (Asynchronous Module Definition) 环境中运行。通过 CDN (内容分发网络) 加载时,您可以通过全局Adjust
命名空间对其进行访问。
使用 CDN
通过 CDN 加载 SDK 时,您应该在生产环境中使用压缩版本。
- 您可以通过添加一个版本至 CDN 目标来加载指定版本,如下所示:
https://cdn.adjust.com/adjust-5.7.0.min.js
。 - 要加载最新版本,请使用
adjust-latest
包,如下所示:https://cdn.adjust.com/adjust-latest.min.js
。该包会自动更新,您无需更改目标文件。
要通过 CDN 加载 SDK,请将以下代码片段加入网页应用的<head>
元素中:
<script type="application/javascript">!function(t,r,e,a,n,o,i,l,c,s,d,h,u){var f=i+"_q",m=i+"_c";t[i]=t[i]||{},t[f]=t[f]||[],t[m]=t[m]||[];for(let r=0;r<l.length;r++)d(t[i],t[f],l[r]);for(let r=0;r<c.length;r++){var g,b=c[r][0],p=c[r][1];t[i][b]=function(...r){return g=this,t[m].push((function(){g[s]=new t[i][b](...r)})),g};for(let r=0;r<p.length;r++){const e=p[r];t[i][b].prototype[e]=function(...r){t[m].push((function(){g[s][e](...r)}))}}}h=r.createElement(e),u=r.getElementsByTagName(e)[0],h.async=!0,h.src="https://cdn.adjust.com/adjust-latest.min.js",h.onload=function(){for(var r=0;r<t[m].length;r++)t[m][r]();t[m]=[];for(r=0;r<t[f].length;r++)t[f][r][1][0][s]?t[i][t[f][r][0]](t[f][r][1][0][s]):t[i][t[f][r][0]].apply(t[i],t[f][r][1]);t[f]=[]},u.parentNode.insertBefore(h,u)}(window,document,"script",0,0,0,"Adjust",["initSdk","getAttribution","getWebUUID","waitForAttribution","waitForWebUUID","setReferrer","trackEvent","addGlobalCallbackParameters","addGlobalPartnerParameters","removeGlobalCallbackParameter","removeGlobalPartnerParameter","clearGlobalCallbackParameters","clearGlobalPartnerParameters","switchToOfflineMode","switchBackToOnlineMode","stop","restart","gdprForgetMe","disableThirdPartySharing","trackThirdPartySharing","initSmartBanner","showSmartBanner","hideSmartBanner"],[["ThirdPartySharing",["addGranularOption","addPartnerSharingSetting"]]],"__realObj",(function(t,r,e){t[e]=function(){r.push([e,arguments])}}));</script>
Adjust SDK 会在每个页面上加载并初始化。
子资源完整性
请使用子资源完整性检查来抵御 XSS (跨站脚本) 攻击。要在运行包之前对其进行验证,请使用以下调用 (请注意额外的crossOrigin
、 integrity
和经过编码的哈希值):
<script type="application/javascript">!function(t,r,e,a,n,o,i,l,s,c,d,h,u){var f=i+"_q",g=i+"_c";t[i]=t[i]||{},t[f]=t[f]||[],t[g]=t[g]||[];for(let r=0;r<l.length;r++)d(t[i],t[f],l[r]);for(let r=0;r<s.length;r++){var m,b=s[r][0],p=s[r][1];t[i][b]=function(...r){return m=this,t[g].push((function(){m[c]=new t[i][b](...r)})),m};for(let r=0;r<p.length;r++){const e=p[r];t[i][b].prototype[e]=function(...r){t[g].push((function(){m[c][e](...r)}))}}}h=r.createElement(e),u=r.getElementsByTagName(e)[0],h.async=!0,h.src="https://cdn.adjust.com/adjust-latest.min.js",o&&(h.crossOrigin="anonymous",h.integrity=o),h.onload=function(){for(var r=0;r<t[g].length;r++)t[g][r]();t[g]=[];for(r=0;r<t[f].length;r++)t[f][r][1][0][c]?t[i][t[f][r][0]](t[f][r][1][0][c]):t[i][t[f][r][0]].apply(t[i],t[f][r][1]);t[f]=[]},u.parentNode.insertBefore(h,u)}(window,document,"script",0,0,"sha384-WE6fJqvcE0mjcC/fPYooIQAOhsHpTDVYjC52i6Asn3LECEpjHyI5zUwD8/5esthg","Adjust",["initSdk","getAttribution","getWebUUID","waitForAttribution","waitForWebUUID","setReferrer","trackEvent","addGlobalCallbackParameters","addGlobalPartnerParameters","removeGlobalCallbackParameter","removeGlobalPartnerParameter","clearGlobalCallbackParameters","clearGlobalPartnerParameters","switchToOfflineMode","switchBackToOnlineMode","stop","restart","gdprForgetMe","disableThirdPartySharing","trackThirdPartySharing","initSmartBanner","showSmartBanner","hideSmartBanner"],[["ThirdPartySharing",["addGranularOption","addPartnerSharingSetting"]]],"__realObj",(function(t,r,e){t[e]=function(){r.push([e,arguments])}}));</script>
使用 npm
Adjust SDK 还可用于 npm。要将包加入您的项目,请使用您常用的包管理器:
2. 初始化 SDK
安装 SDK 后,需要进行初始化。为此,请调用initSdk
方法。您可以使用该方法中的参数来自定义 SDK 在应用中的工作方式。
要初始化 SDK,您必须将以下参数添加至initSdk
调用:
appToken
(string
):您的 Adjust 应用识别码。environment
(string
):SDK 运行的环境。- 传递
sandbox
来在测试模式下运行 SDK。 - 传递
production
来在生产模式下运行 SDK,方便发布。
- 传递
Adjust.initSdk({ appToken: "YOUR_APP_TOKEN", environment: "sandbox",});