前提条件
Singular Cordova SDK をインストールする前に、以下の前提条件の手順を完了し、統合プロセスが円滑に進むようにしてください。
必須の前提条件:
- 計画手順の完了:「Singular SDKの統合:計画と前提条件」のガイドに従ってください。これらの手順は、Singular SDKを統合する際に必須です。
- 動作する Cordova アプリ:iOS および/または Android 向けに必要なビルドツールが設定された、動作する Cordova プロジェクトを用意してください。
- SDK 認証情報:Singular プラットフォームの [Developer Tools] > [SDK Integration] > [SDK Keys] から、Singular SDK キーと SDK シークレットを取得してください。
重要:Singular Reporting API Keyは絶対に使用しないでください。SDK統合ページから取得したSDK固有の認証情報のみを使用してください。誤った認証情報を使用すると、データがSingularに送信されなくなります。
インストール
Singularプラグインのインストール
Cordova CLIを使用して、CordovaプロジェクトにSingularプラグインを追加します。 このプラグインは、iOSおよびAndroid向けのネイティブSingular SDKへのJavaScriptバインディングを提供します。 iOSおよびAndroid向けのネイティブSingular SDKへのJavaScriptバインディングを提供します。
Cordova CLI 経由でのインストール
- ターミナルを開き、Cordovaプロジェクトの ルートディレクトリに移動します。
-
プラグインの追加:以下のコマンドを実行して、
Singular SDK プラグインをインストールします:
cordova plugin add singular_cordova_sdk -
インストールの確認:
config.xmlファイルにプラグインのエントリがあるか確認するか、 以下のコマンドを実行して、プラグインが追加されたことを確認します:cordova plugin list
Ionic Framework との統合
Ionic Frameworkを使用してCordovaアプリを構築している場合は、Singular SDKを適切に統合するために、以下の 追加手順に従ってください。
Ionic用プラグインのインストール
-
Ionic CLI 経由でのインストール:Ionic Cordova コマンドを使用して
プラグインを追加します:
ionic cordova plugin add singular_cordova_sdk -
Cordova変数の宣言:メインのTypeScript
ファイル(通常は
app.component.tsまたはhome.page.ts)の先頭に、Cordova変数を宣言します:declare var cordova; -
platform ready内で初期化:platform
readyイベントを使用して、SDKの初期化前にネイティブプラグインが確実に読み込まれるようにします:
import { Component } from '@angular/core'; import { Platform } from '@ionic/angular'; declare var cordova; export class HomePage { constructor(public platform: Platform) { this.platform.ready().then(() => { // Initialize Singular SDK here (see SDK Integration section) }); } }
なぜ platformReady なのか? platform.ready()
プロミスにより、コードがプラグインにアクセスしようとする前に、
Cordova プラグインが完全に読み込まれることが保証されます。Ionic を使用する際は、
常にこのコールバック内で Singular SDK を初期化してください。
プラットフォーム設定
Androidの設定
コア SDK の機能とアトリビューション追跡を有効にするため、 Android 固有の権限と設定を構成します。
必要な権限の追加
アトリビューション、ネットワークアクセス、および
インストールリファラーの追跡を有効にするために、Cordovaの
config.xml ファイルに必要なAndroid権限を追加してください。
-
config.xml を開く:Cordova
プロジェクトのルートディレクトリに移動し、
config.xmlファイルを開きます。 -
権限の追加:
<platform name="android">セクション内に、以下の 権限を追加します:<platform name="android"> <!-- Required for GAID collection and attribution --> <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest"> <uses-permission android:name="com.google.android.gms.permission.AD_ID" /> </edit-config> </platform>
キッズアプリに関する重要事項:
Kids SDK を統合している場合は、
com.google.android.gms.permission.AD_ID
権限を追加しないでください。この権限は標準アプリには必要ですが、
COPPA 規制に準拠するため、13歳未満の子供を対象とするアプリでは
省略する必要があります。
追加の権限(自動追加)
以下の権限は Singular Cordova プラグインによって自動的に追加されるため、手動での設定は不要です:
-
android.permission.INTERNET- データ転送のための ネットワークアクセス -
android.permission.ACCESS_NETWORK_STATE- ネットワーク状態の 監視 -
BIND_GET_INSTALL_REFERRER_SERVICE- インストール元 追跡
iOSの設定
iOSの設定はCordovaプラグインによって自動的に処理されます。iOSプロジェクトにおいて、 追加の手動設定手順は不要です。
CocoaPodsのインストール:iOS向けにビルドする際、Cordovaは
自動的にpod install を実行し、必要な依存関係を取得します。
開発マシンにCocoaPodsがインストールされていることを確認してください。
SDKの統合
プライバシーコンプライアンス:Singular SDKを実装する際は、 GDPR、CCPA、COPPAなど、事業展開地域のプライバシー関連法規を遵守してください。 詳細については、「SDKのオプトインおよびオプトアウトに関するガイドライン」を参照してください。
アプリが起動するたびに、Singular SDKを初期化してください。SDKの初期化は Singularのアトリビューション機能すべてに不可欠であり、ユーザーリテンション指標を 算出するための新しいセッションを作成します。
基本的なSDKの初期化
SDKの認証情報を使用してSingularConfig オブジェクトを作成し、
init() メソッドを使用してSDKを初期化してください。これは
アプリのライフサイクルにおいて、可能な限り早い段階で実行する必要があります。
初期化の例
- 認証情報の取得: Singularアカウントに ログインし、 「Developer Tools」>「SDK Integration」>「SDK Keys」 に移動して、SDKキーとシークレットを確認します。
-
設定の作成:認証情報を使用して
SingularConfigオブジェクトをインスタンス化します。 -
SDKの初期化:
init()を呼び出して SDKを起動します。
// Create the Singular configuration object
var singularConfig = new cordova.plugins.SingularCordovaSdk.SingularConfig(
"YOUR_SDK_KEY",
"YOUR_SDK_SECRET"
);
// Initialize the Singular SDK
cordova.plugins.SingularCordovaSdk.init(singularConfig);
詳細な設定
init() を呼び出す前に、設定メソッドを連鎖させることで、
追加のSDK機能を設定します。この例では、ディープリンク、ロギング、
セッションタイムアウトなどの一般的な設定オプションを示します。
// Create configuration with credentials
var singularConfig = new cordova.plugins.SingularCordovaSdk.SingularConfig(
"YOUR_SDK_KEY",
"YOUR_SDK_SECRET"
);
// Enable debug logging (disable in production)
singularConfig.withLoggingEnabled();
// Set custom session timeout (default is 60 seconds)
singularConfig.withSessionTimeoutInSec(120);
// Configure deep linking handler
var linkHandler = function(data) {
var deeplink = data.deeplink;
var passthrough = data.passthrough;
var isDeferred = data.isDeferred;
console.log("Received deep link:", deeplink);
console.log("Is deferred:", isDeferred);
// Handle navigation based on deep link
if (deeplink) {
// Navigate to appropriate screen
}
};
singularConfig.withSingularLink(linkHandler);
// Set custom user ID (if user is logged in)
singularConfig.withCustomUserId("user_12345");
// Initialize Singular
cordova.plugins.SingularCordovaSdk.init(singularConfig);
設定リファレンス:利用可能な設定オプションの完全な一覧については、 Cordova SDK 設定リファレンスを参照してください。
Meta インストールリファラーアトリビューション
Meta(Facebook)のインストールリファラーアトリビューションを設定し、 FacebookおよびInstagramの広告キャンペーンからのインストールを追跡します。
2025年6月18日現在:Metaの Advanced Mobile Measurement Reporting (AMM) により、ほとんどのユースケースにおいてMetaインストールリファラーの実装は 不要になりました。アプリでAMMレポートが有効になっている場合、Metaインストールリファラーの実装は 推奨されません。
Meta Install Referrerを有効にする
AMMが有効になっていない場合、またはレガシーなトラッキングのためにMeta Install Referrerが必要な場合は、 SDKの設定にFacebookアプリIDを追加してください。
- Facebook App IDの確認方法: Facebook Developerアカウントにログインし、 アプリのダッシュボードに移動してApp IDを確認してください。
-
設定への追加:
withFacebookAppId()メソッドを使用して、Meta Install Referrerを有効にします:// Create configuration var singularConfig = new cordova.plugins.SingularCordovaSdk.SingularConfig( "YOUR_SDK_KEY", "YOUR_SDK_SECRET" ); // Enable Meta Install Referrer singularConfig.withFacebookAppId("YOUR_FACEBOOK_APP_ID"); // Initialize SDK cordova.plugins.SingularCordovaSdk.init(singularConfig);
Facebook App ID の確認方法:Facebook App ID の確認方法に関する 詳細な手順については、 「アプリの Facebook App ID はどこで確認できますか?」を参照してください
詳細設定
Google Ads iOS 統合コンバージョン測定に必要な設定
アプリで iOS 14.5 以降のユーザーを対象とした Google Ads キャンペーンを実行している場合、iOS 統合コンバージョン 測定 (ICM) をサポートするために、追加の SDK 設定手順が必要です。これには以下が含まれます:
- Googleのオンデバイス測定(ODM)SDKの統合
- Singular iOS SDK v12.8.1 以降への更新(Unity 版は v5.5.0 以降、Flutter/Cordova 版は v1.8.0 以降、React Native 版は v3.9.0 以降)
-
-ObjCリンカーフラグの追加およびSingularConfigでのenableOdmWithTimeoutIntervalの有効化
注: enableOdmWithTimeoutIntervalを有効にすると、
SDKの初期化が遅延し、
ディープリンクのコールバックが延期される可能性があります。
再作業を避けるため、SDKの初期実装時にこの設定を完了させてください。