RudderStack はオープンソースのカスタマーデータプラットフォーム (CDP) であり 企業がカスタマーデータを収集、統合し、さまざまな宛先へルーティングできるようにします。カスタマーデータパイプラインを管理するための一元化されたプラットフォームを提供し、Web サイト、モバイルアプリ、サーバー、クラウドサービスなどのさまざまなソースからデータを簡単に収集できるようにします。
Singular SDK は、標準の "Device-Mode" または "Cloud-Mode" の統合オプションでは利用できない多くの機能を提供します。
Rudderstack を Singular とともに使用する場合、すべての Singular の機能と機能性を活用するために、 ハイブリッド 方式での統合を推奨します。
ハイブリッドアプローチは以下で構成されます。
- Singular SDK を実装する ことを Rudderstack とは独立して行い、Singular SDK がセッショントラッキング、SDK フレームワーク (React Native、Unity など) の追加サポート、SkAdNetwork、ディープリンクおよびディファードディープリンク、および高度な機能を処理できるようにします。
- Rudderstack で Singular Destination の "Cloud-Mode" オプションを有効にします。これにより、Rudderstack のすべてのモバイル track イベントを Singular の Destination に送信できます。
以下の手順では、Rudderstack を使用した Singular ハイブリッド実装の構成方法を説明します。
| 対象ガイド | エンジニアリングチーム |
| 前提条件 | この記事は、すでに Rudderstack Mobile SDK がアプリに統合されていることを前提としています。 |
この統合を使用するには、Rudderstack の Mobile SDK を使用している必要があります。
Singular SDK は以下のサポートを提供します。
- インストールアトリビューション
- SkAdNetwork サポート
- Google Install Referrer サポート
- META Install Referrer サポート
- Apple Search Ads アトリビューション
- カスタムアプリ内イベントトラッキング
- 収益トラッキング
- Custom User ID
- Global Properties サポート
- プライバシーオプション
Rudderstack の "Cloud-Mode" 統合は以下のサポートを提供します。
- カスタムアプリ内イベントトラッキング
- 収益トラッキング
- Custom User ID
ハイブリッド構成
-
Singular SDK を統合する
Singular SDK を Rudderstack とは独立して実装します。SDK のオプションとフレームワークについては こちら をご覧ください。
-
Rudderstack - Singular Destination (Cloud-Mode) を有効にする
ガイドは こちら をご覧ください。
重複するセッションイベントを避ける: ハイブリッドアプローチでは、Singular SDK がすでにセッショントラッキングを管理しています。Rudderstack - Singular Destination (Cloud-Mode) を構成する際は、「Session Event Name」接続設定を 設定しない でください。また、 Application Installed 、 Application Opened 、または Application Updated のライフサイクルイベントを Rudderstack 経由で Singular に送信しないでください。これを行うと、Rudderstack が Singular SDK と並行してセッションイベントを送信し、Singular で重複するセッションイベントが発生します。
推奨される追加セットアップ
ハイブリッド方式を使用する場合、Rudderstack の AnonymousId と Rudderstack の User ID を Singular の SDK に渡すことを推奨します。
SDK ドキュメントにあるこれらのオプション機能の実装には、特に注意して取り組んでください。使用しているフレームワークによって手順が若干異なる場合があります。
Global Properties を実装する
Rudderstack の AnonymousId を Singular の Global Property に渡します。これにより、Rudderstack の AnonymousId が SDK からのデバイスレベルのデータに関連付けられます。
Singular SDK の初期化時に Singular Config オブジェクトでこの値を Singular に提供することで、UserId が不明な場合でも Singular が Rudderstack にインストール ポストバックを送信できるようになります。Singular は、Rudderstack の AnonymousId および/または Rudderstack の UserId 値を使用して、 App Install からのアトリビューション情報のみを Rudderstack に提供できます。これがどのように構成されるかの例として、Singular の Global Properties [ iOS ][ Android ] を参照してください。
Global Property は、Singular SDK の初期化時に、キー rudderstack_anonymous_id と、Rudderstack SDK から取得した Rudderstack anonymousId の値を使用して構成する必要があります。Rudderstack AnonymousID は、次のメソッドを使用して Rudderstack SDK から取得できます [iOS] [Android] 。[RSClient getInstance].anonymousId;
Singular SDK Config の例
- (SingularConfig *)getConfig {
// Get the 3rd-party identifiers to set in Global Properties:
// If 3rd-party SDKs are providing any identifiers to Singular, the
// respective SDK must be initialized before Singular.
NSString* thirdPartyKey = @"rudderstack_anonymous_id";
NSString* thirdPartyValue = [RSClient getInstance].anonymousId;
// Singular Config Options
SingularConfig* config = [[SingularConfig alloc]
initWithApiKey:APIKEY andSecret:SECRET];
...
// Using Singular Global Properties feature to capture 3rd-party identifiers
[config setGlobalProperty:thirdPartyKey
withValue:thirdPartyValue overrideExisting:YES];
...
return config;}
// (Optional) Get 3rd-party identifiers to set in Global Properties:
// If 3rd-party SDKs are providing any identifiers to Singular, the
// respective SDK must be initialized before Singular.
String thirdPartyKey = new String("rudderstack_anonymous_id");
String thirdPartyValue = new String(RudderClient.getInstance()?.anonymousId);
// Singular Config Options
SingularConfig config = new SingularConfig("SDK KEY", "SDK SECRET")
.withGlobalProperty(thirdPartyKey, thirdPartyValue, true);
Custom User ID を実装する
Rudderstack の UserId を Singular の Custom User ID メソッドに渡します。これにより、Rudderstack の UserId が SDK からのデバイスレベルのデータに関連付けられます。Singular SDK の初期化時に Singular Config オブジェクトでこの値を Singular に提供することで、Singular が Rudderstack へのインストールポストバックで UserId を送信できるようにもなります。Singular 統合に使用している SDK フレームワークのドキュメントで詳細をお読みください。例 [ iOS ][ Android ]
さらに、UserID は Singular SDK からネイティブにトリガーされたあらゆるアプリ内イベントに関連付けられます。
受信した "Cloud-Mode" イベントについては、Singular は Custom User ID を Rudderstack の User ID 値にマッピングしています。