これは、WebサイトまたはWebアプリ用のAdjust™のJavascript SDKガイドです。Adjust™については、adjust.comをご覧ください。
Read this in other languages: English, 中文, 日本語, 한국어.
- サンプルアプリ
- 導入方法
- 初期化
- イベントトラッキング
- グローバルコールバックパラメーター
- グローバルパートナーパラメーター
- オフライン/オンラインモード
- SDKの停止/再起動
- GDPR 忘れられる権利
- マーケティングのオプトアウト
- データレジデンシー
- ライセンス
Webアプリのサンプルアプリがこのリポジトリにあります。AdjustSDKをどのように使用できるか確認してください。
Adjust Web SDKをWebアプリに実装することで、インストール、セッション、イベントをトラッキングできます。
AdjustのSDKは全てのモジュール定義の下で公開されているため、CommonJSおよびAMD環境で動作し、CDNを利用して読み込まれた場合は global Adjust
を利用することもできます。
CDNでAdjustSDKを遅延ロードするためには、以下のコードを<head>
タグに貼り付けます。
<script type="application/javascript">
!function(t,e,a,r,n,s,d,l,o,i,u){t.Adjust=t.Adjust||{},t.Adjust_q=t.Adjust_q||[];for(var c=0;c<l.length;c++)o(t.Adjust,t.Adjust_q,l[c]);i=e.createElement(a),u=e.getElementsByTagName(a)[0],i.async=!0,i.src="https://cdn.adjust.com/adjust-latest.min.js",i.onload=function(){for(var e=0;e<t.Adjust_q.length;e++)t.Adjust[t.Adjust_q[e][0]].apply(t.Adjust,t.Adjust_q[e][1]);t.Adjust_q=[]},u.parentNode.insertBefore(i,u)}(window,document,"script",0,0,0,0,["initSdk","getAttribution","getWebUUID","setReferrer","trackEvent","addGlobalCallbackParameters","addGlobalPartnerParameters","removeGlobalCallbackParameter","removeGlobalPartnerParameter","clearGlobalCallbackParameters","clearGlobalPartnerParameters","switchToOfflineMode","switchBackToOnlineMode","stop","restart","gdprForgetMe","disableThirdPartySharing","initSmartBanner","showSmartBanner","hideSmartBanner"],(function(t,e,a){t[a]=function(){e.push([a,arguments])}}));
</script>
Adjust Web SDKはページごとに1回だけ読み込まれ、ページの読み込みごとに1回起動される必要があります。
CDNを利用してSDKをロードするときは、縮小バージョンを使用することを推奨します。そうすることで、 https://cdn.adjust.com/adjust-5.6.0.min.js
のような特定のバージョンをターゲットにしたり、あるいは ターゲットファイルを変更せずに自動更新する場合は、最新バージョン https://adjust.com/adjust-latest.min.js
をターゲットにすることが可能です。 SDKファイルはキャッシュされるため即時に提供され、更新は30分ごとに行われます。すぐに更新する必要がある場合は、必ず特定のバージョンをターゲットにしてください。
また、NPMを利用してSDKをインストールすることも可能です:
npm install @adjustcom/adjust-web-sdk --save
Adjust Web SDKを初期化するためには、できるだけ早くAdjust.initSdk
メソッドを呼び出す必要があります。
Adjust.initSdk({
appToken: 'YOUR_APP_TOKEN',
environment: 'production'
});
以下は、initSdk
メソッドに使用できるパラメーターの全リストです。
appToken string
初期化メソッドに必要なパラメーターです。有効なアプリトークンを指定してください。
environment string
このパラメーターも必須です。利用可能なオプションはproduction
またはsandbox
です。SDKをWebアプリでテストする場合は、sandbox
を使用します
attributionCallback function
このパラメーターは、アトリビューションの変化を通知するためのコールバック関数です。コールバックには2つの引数が指定されます。1つ目は内部のイベント名(指定する必要はありません)で、もう1つは変化したアトリビューションに関する情報を保持するオブジェクトです。
例:
Adjust.initSdk({
// ... 必須パラメーターを含む他のパラメーターがここに移動します
attributionCallback: function (e, attribution) {
// e: 内部のイベント名、指定する必要はありません
//attribution: 変化したアトリビューションに関する詳細
}
});
defaultTracker string
デフォルトでは、広告キャンペーンにアトリビュートされていないユーザーはアプリのオーガニックにアトリビュートされます。この動作を上書きし、このタイプのトラフィックが別のトラッカーの下にアトリビュートされるようにしたい場合は、このメソッドを使用して別のデフォルトのトラッカーを設定できます。
customUrl string
デフォルトでは、全てのリクエストがAdjustのエンドポイントに送信されます。全てのリクエストを指定のエンドポイントにリダイレクトするよう設定することも可能です。
eventDeduplicationListLimit number
デフォルトでは、このパラメーターは「10」に設定されています。この制限をオーバーライドすることは可能ですが、必ず正数にし、大きすぎないようにしてください。これにより最後の「n」個の重複排除ID(このパラメーターで定義)がキャッシュされ、それらを使用して重複したIDを持つイベントが除外されます。
logLevel string
デフォルトでは、このパラメーターはerror
に設定されています。可能な値は、none
、error
、info
、verbose
です。正確なログを確認し、SDKの実装が適切に行われていることを確認するためには、テスト時にverbose
を使用することを強くお勧めします。
各ログレベルの詳細は次のとおりです。
verbose
- 特定のアクションに関連する詳細なメッセージを出力します。info
- 基本的な情報メッセージのみを出力します。error
- エラーメッセージのみを出力します。none
- 何も出力しません。
logOutput string
ログを確認したいhtmlコンテナを定義できます。これは、モバイルデバイスでテストする場合や、画面に直接ログを表示したい場合に便利です(テストの場合のみ推奨)。
Adjustを使ってイベントをトラッキングできます。ここでは、特定のボタンに対する全てのタップを計測する場合について説明します。[管理画面]で新しいイベントトークンを作成し、仮にabc123
というイベントトークンが発行されたとします。このイベントをWebアプリからトラッキングするには、次の手順を実行する必要があります。
Adjust.trackEvent({
eventToken: 'YOUR_EVENT_TOKEN'
})
イベントのトラッキングは、Adjust SDKを初期化した後でのみ行ってください。
以下は、trackEvent
メソッドに使用できるパラメーターの全リストです。
eventToken string
イベントのトラッキングメソッドにはこのパラメーターが必要なため、有効なイベントトークンを指定してください。
revenue number
イベントに収益を追加したい場合(たとえば、Webアプリ内で発生した購入をトラッキングしたい場合)、このパラメーターに正の値を指定する必要があります。次のブロックで説明する通貨
パラメーターを指定することも必須です
currency string
収益イベントをトラッキングする場合は、このパラメーターを指定する必要があります。JPY
、USD
などの有効な通貨コードを使用してください。
例:
Adjust.trackEvent({
// ... 必須パラメーターを含む他のパラメーターがここに移動します
revenue: 110,
currency: 'JPY'
})
通貨コードを設定すると、Adjustは計測された課金金額を設定されたレポート通貨に自動換算します。通貨換算についての詳細はこちらをご覧ください。
収益とイベントトラッキングの詳細については、イベントトラッキングガイド をご覧ください。
callbackParams array
[管理画面]でイベントのコールバックURLを登録できます。イベントがトラッキングされるたびに、そのURLにGETリクエストが送信されます。trackEvent
メソッドに渡されたマップオブジェクトにcallbackParams
パラメーターを追加することで、そのイベントにコールバックパラメーターを追加できます。その後、これらのパラメーターをコールバックURLに追加します。
たとえば、URL https://www.mydomain.com/callback
が登録されていて、次のようにイベントをトラッキングするとします。
Adjust.trackEvent({
// ... 必須パラメーターを含む他のパラメーターがここに移動します
callbackParams: [
{key: 'key', value: 'value'},
{key: 'foo', value: 'bar'}
]
})
この場合、Adjustは以下のGETリクエストを送信します。
https://www.mydomain.com/callback?key=value&foo=bar
Adjustはカスタムパラメーターを保存せず、コールバックへの追加だけを行います。コールバックが登録されていない場合は、保存も送信もされないことに注意してください。
使用可能な値のリストを含むURLコールバックの詳細は、コールバックガイドを参照してください。
partnerParams array
Adjustでは、管理画面でパラメーターを追加して、連携を有効化したネットワークパートナーに送信することもできます。
これは上記のコールバックパラメーターと同様に機能しますが、trackEvent
メソッドに渡されるマップオブジェクトにpartnerParams
パラメーターを追加することで追加できます。
Adjust.trackEvent({
// ... 必須パラメーターを含む他のパラメーターがここに移動します
partnerParams: [
{key: 'key', value: 'value'},
{key: 'foo', value: 'bar'}
]
})
スペシャルパートナーとの連携方法の詳細については、[スペシャルパートナーガイド] [スペシャルパートナー]をご覧ください。
deduplicationId string
重複したイベントがトラッキングされないようにするために、イベント重複排除IDを指定することができます。重複排除リストの制限は、上記のように初期化構成で設定されます。
グローバルコールバックパラメーターには、追加、削除、消去などのメソッドが複数あります。以下は、使用可能な各メソッドのリストです。
グローバルコールバックパラメーターを追加することができます。これは、各セッションとイベントリクエストに自動的に追加されます。trackEvent
メソッドに直接渡されるコールバックパラメーターは、既存のグローバルコールバックパラメーターをオーバーライドすることに注意してください。このメソッドはarray
を受け入れます。これは、trackEvent
メソッドのcallbackParams
パラメーターと同じ形式です。
例:
Adjust.addGlobalCallbackParameters([
{key: 'key1', value: 'value1'},
{key: 'key2', value: 'value2'}
]);
このメソッドに指定のキーを渡すことで、特定のコールバックパラメーターを削除できます。
例:
Adjust.removeGlobalCallbackParameter('key1');
全てのグローバルコールバックパラメーターを消去するには、このメソッドを呼び出します。
例:
Adjust.clearGlobalCallbackParameters();
グローバルパートナーパラメーターは、グローバルコールバックパラメーターと同様の方法で追加、削除、および消去ができます。以下は、使用可能な各メソッドのリストです。
グローバルパートナーパラメーターを追加することができます。これは、各セッションとイベントリクエストに自動的に追加されます。trackEvent
メソッドに直接渡されるパートナーパラメーターは、既存のグローバルパートナーパラメーターをオーバーライドすることに注意してください。このメソッドはarray
を受け入れます。これは、trackEvent
メソッドのpartnerParams
パラメーターと同じ形式です。
例:
Adjust.addGlobalPartnerParameters([
{key: 'key1', value: 'value1'},
{key: 'key2', value: 'value2'}
]);
このメソッドに指定のキーを渡すことで、特定のパートナーパラメーターを削除できます。
例:
Adjust.removeGlobalPartnerParameter('key1');
全てのグローバルパートナーパラメーターを消去するには、このメソッドを呼び出します。
例:
Adjust.clearGlobalPartnerParameters();
デフォルトでは、Adjust SDKは常にオンラインモードで起動します。ただし、トラッキングイベントやセッションなどの全てのネットワークリクエストを一時停止したい場合は、オフラインモードにすることができます(ただし、最初のセッションはこのモードが有効化されずに送信されます)。 オフラインモードのオン/オフを切り替える方法は2つあります。
このメソッドはAdjust SDKをオフラインモードにします。
例:
Adjust.switchToOfflineMode();
このメソッドはAdjust SDKをオンラインモードに戻します。
Adjust.switchBackToOnlineMode();
特定の状況で、SDKの実行を完全に停止することが可能です。 つまり、SDKがセッションとイベントのトラッキングを停止し、SDKが完全に機能しなくなります。 ただし、しばらくしてから再起動することは可能です。この機能に使用できるメソッドは次のとおりです。
これにより、Adjust SDKが停止します。
例:
Adjust.stop();
これによりAdjust SDKが再起動します。
例:
Adjust.restart();
EUの一般データ保護規則(GDPR)に従い、ユーザーが忘れられる権利 (GDPR Forget) を行使した場合は、Adjust SDKがAdjustのバックエンドにその情報を通知し、該当ユーザーのトラッキングを停止します。 これに使用できるメソッドは1つあります。
このメソッドは、Adjust SDKのトラッキングを停止し、ユーザーが GDPR 忘れられる権利を行使していることをAdjustバックエンドに通知します。 このメソッドを実行した後は、AdjustSDKのトラッキングを再開することはできません。
例:
```Adjust.gdprForgetMe();
詳細については、こちら をご覧ください。
マーケティングのオプトアウトには、サードパーティの共有機能を無効にする機能があります。これにより、GDPR忘れられる権利の場合と同じ方法でAdjustバックエンドに通知されます。
これに使用できるメソッドは1つあります。
例:
Adjust.disableThirdPartySharing();
データレジデンシーにより、Adjustがデータを保管する国を選択できます。プライバシー要件の厳しい国で運営されている場合に便利な機能です。データレジデンシーを設定すると、Adjustは選択された地域のデータセンターにお客様のデータを保管します。
データレジデンシーの国を設定するには、initSdk
の呼び出しで引数dataResidency
をパスします。
Adjust.initSdk({
"appToken": "YOUR_APP_TOKEN",
"environment": "production",
"logLevel": "verbose",
"dataResidency": "EU"
})
次の値を使用できます:
EU
– データレジデンシーの地域をEUに設定。TR
– データレジデンシーの地域をトルコに設定。US
– データレジデンシーの地域を米国に設定。
Adjust SDKはMITライセンスを適用しています。
Copyright (c) 2020 Adjust GmbH, https://www.adjust.com
以下に定める条件に従い、本ソフトウェアおよび関連文書のファイル(以下「ソフトウェア」) の複製を取得する全ての人に対し、 ソフトウェアを無制限に扱うことを無償で許可します。 これには、ソフトウェアの複製を 使用、複写、変更、マージ、掲載、流通、サブライセンス、および/または販売する権利、 また、ソフトウェアを提供する相手に同じ許可を与える 権利も無制限に含まれます。
上記の著作権表示ならびに本許諾表示を、ソフトウェアの全ての 複製または重要な部分に記載するものとします。
本ソフトウェアは「現状のまま」で、明示であるか暗黙であるかを問わず、何らの保証もなく提供されます。 ここでいう保証とは、商品性、特定の目的への適合性、および権利非侵害についての保証を含みますが、それに限定されたものではありません。 いかなる場合でも、 作者または著作権者は、契約行為、不法行為、またはそれ以外であろうと、ソフトウェアに起因または関連し、あるいはソフトウェアの使用 またはその他の取り扱いによって生じる一切の請求、損害、その他の義務について 何らの責任も負わないものと します。