Facebook SDKとSingular SDKを同一アプリで使用する
同一アプリにFacebook SDKとSingular SDKの両方を実装するための総合ガイドです。 設定要件、データ精度に関する考慮事項、連携のベストプラクティスをカバーしています。
連携の概要
モバイル計測パートナーとしてのSingular
アプリにSingular SDKが連携されている場合、FacebookアトリビューションのトラッキングやFacebookプラットフォームでのイベント確認にFacebook SDKは必要ありません。 FacebookのMMP(モバイル計測パートナー)として認定されているSingular SDKが、すべてのアトリビューションとイベントトラッキングの要件を処理します。
SingularのMMP機能:
- アトリビューショントラッキング: Facebookキャンペーンのインストールとコンバージョンを自動的にトラッキングします
- イベント転送: キャンペーン最適化のためにアプリ内イベントをFacebookに送信します
- データレポーティング: Facebookを含む全チャネルにわたる統合アトリビューションデータを提供します
- 認定連携: 完全なAPIアクセスを持つFacebook認定計測ソリューションです
Facebook SDKを使用すべき場合
有効なユースケース
Singular SDKがアトリビューションと分析を処理していても、一部の組織では計測以外のFacebook固有の機能のためにFacebook SDKを連携する場合があります。
ソーシャル機能
Facebookログイン
ユーザーがFacebookの認証情報を使って認証できるようにし、オンボーディングを 簡素化して登録の摩擦を軽減します。
Facebook共有
ユーザーがアプリコンテンツをFacebookに直接共有できるようにし、オーガニックリーチと バイラル成長の可能性を高めます。
高度な広告機能
Facebookモバイルアプリインストール広告
Facebookモバイルアプリインストール広告 の高度な機能にアクセスできます:
- ダイナミック広告: パーソナライズされた商品おすすめでユーザーをリターゲティングします
- Audience Network: キャンペーンをFacebookプラットフォーム外のパートナーアプリに拡大します
- Custom Audiences: Facebookのユーザーデータに基づいてオーディエンスを作成します
- 高度なターゲティング: Facebookの詳細なターゲティングオプションを活用します
Facebookプラットフォーム連携
Graph APIアクセス
FacebookソーシャルグラフのデータReadおよびWriteのためにFacebook Graph APIと 連携します。
Messenger連携
カスタマーサポートまたはエンゲージメントキャンペーンのためにFacebook Messengerを 通じたコミュニケーションを有効にします。
連携の判断: アトリビューションと分析以外の特定のFacebookプラットフォーム機能がアプリに必要な場合にのみ、 Facebook SDKを連携してください。計測目的のみであれば、Singular SDKが完全な機能を提供します。
データ精度に関する考慮事項
同一アプリでFacebook SDKとSingular SDKの両方を使用する場合、データ精度を維持し 不整合を防ぐための適切な設定が不可欠です。
一般的なデータの問題
イベントの重複
適切な設定なしでは、イベントがFacebookに2回送信される可能性があります (Facebook SDKとSingular SDKからそれぞれ1回ずつ)。これにより、イベント数が 水増しされ、レポートが不正確になります。
重大な問題: イベントの重複トラッキングにより以下が発生します:
- イベント数の水増し: Facebookが実際のイベントの2倍を報告し、キャンペーンパフォーマンス指標が歪められます
- セッション数の誤り: Facebookプラットフォームでセッションデータが人為的に高く表示されます
- キャンペーン最適化の問題: Facebookアルゴリズムがキャンペーン最適化のための誤ったシグナルを受け取ります
- 予算配分の問題: 不正確なデータがキャンペーン全体の予算配分に影響します
解決策の要件
設定戦略
両方のSDKを使用する際にデータ精度を維持するには、Facebook SDKの自動イベントログを 無効化し、Singular SDKがFacebookへのすべての計測とイベント転送を処理するようにします。
連携アーキテクチャ:
| コンポーネント | 役割 | 設定 |
|---|---|---|
| Singular SDK |
|
標準設定 特別な変更不要 |
| Facebook SDK |
|
自動ログを無効化 イベントの重複送信を防止 |
実装手順
データ精度を維持しイベントの重複を防ぎながら、Singular SDKと並行してFacebook SDKを 使用するには、以下の手順に従ってください。
手順1: Facebook SDKイベントログの無効化
プラットフォーム別設定
デフォルトでは、Facebook SDKはイベントをFacebookプラットフォームに自動送信します。 イベントの重複トラッキングを防ぐには、この自動ログを無効化する必要があります。
設定方法
iOSアプリイベントの概要 の「自動ログイベントの無効化」に記載されているFacebookの公式手順に従ってください。
Info.plistの設定
自動イベントログを無効化するには、
Info.plist
ファイルに以下のキーを追加します:
<key>FacebookAutoLogAppEventsEnabled</key>
<false/>
確認手順
-
Info.plistの確認:
キーが
falseの値で正しく追加されていることを確認します - テストビルド: アプリをビルドして実行し、設定が適用されていることを確認します
- イベントの監視: Facebook Analyticsダッシュボードを使用して、Facebook SDKがイベントを 送信していないことを確認します
重要: 自動ログを無効化すると、Facebook SDKはFacebookへのいかなるイベントも 送信しなくなります。Singular SDKがFacebookプラットフォームへのすべての イベント転送を処理します。
設定方法
AndroidアプリイベントのGetting Started の「自動ログイベントの無効化」に記載されているFacebookの公式手順に従ってください。
AndroidManifest.xmlの設定
<application>
タグ内の
AndroidManifest.xml
ファイルに以下のメタデータを追加します:
<application>
...
<meta-data
android:name="com.facebook.sdk.AutoLogAppEventsEnabled"
android:value="false" />
...
</application>
代替方法: プログラムによる設定
または、Applicationクラスでプログラムによって自動ログを無効化することもできます:
import com.facebook.FacebookSdk;
import com.facebook.appevents.AppEventsLogger;
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// Disable automatic event logging
FacebookSdk.setAutoLogAppEventsEnabled(false);
}
}
import com.facebook.FacebookSdk
import com.facebook.appevents.AppEventsLogger
class MyApplication : Application() {
override fun onCreate() {
super.onCreate()
// Disable automatic event logging
FacebookSdk.setAutoLogAppEventsEnabled(false)
}
}
確認手順
-
AndroidManifestの確認:
メタデータが
falseの値で正しく追加されていることを確認します - アプリのビルド: アプリをクリーンビルドして設定が適用されていることを確認します
- イベントの監視: Facebook Analyticsダッシュボードを使用して、Facebook SDKがイベントを 送信していないことを確認します
重要: AndroidManifest設定またはプログラムによる設定のいずれか一方のみを選択し、 両方を同時に使用しないでください。一貫性のためにManifest設定を推奨します。
手順2: Facebookアトリビューションの設定
Singularパートナー設定
Facebook SDKのイベントログを無効化した後、標準の設定手順に従ってSingularプラットフォームで Facebookアトリビューションを設定します。
設定手順: Facebook広告アトリビューション連携 ガイドの手順1〜4に従って、Facebookアトリビューションの設定を完了させてください。
設定チェックリスト:
- Facebook App IDの追加: Singularプラットフォームでアトリビューション → パートナー設定に移動し、 Facebook App IDを追加します
- アトリビューション設定の構成: アトリビューション期間と計測の設定を行います
- イベントマッピング: SingularとFacebook間のイベントマッピングを設定します
- ポストバックの有効化: キャンペーン最適化のためSingularからFacebookへのイベントポストバックを設定します
手順3: 設定の検証
テスト手順
設定完了後、SingularとFacebookのテストツールを使用して正しい実装を検証します。
Singular SDK検証
- テストコンソール: Singularテストコンソール を使用してイベントが正しくトラッキングされていることを確認します
- イベントログ: Singularエクスポートログを確認してイベントが記録されていることを検証します
- アトリビューション検証: SingularレポートでFacebookインストールが正しくアトリビューションされていることを 確認します
Facebookプラットフォーム検証
- イベントマネージャー: Facebookイベントマネージャーを開き、Singularからイベントが表示されていることを 確認します
- イベント数の比較: 重複がないことを確認するため、SingularとFacebook間のイベント数を比較します
- セッショントラッキング: 水増しなしにセッション数が期待値と一致していることを確認します
データ精度チェック
| 確認項目 | 期待される結果 |
|---|---|
| イベント数 | イベントがFacebookに1回だけ表示される(Singularから)、重複なし |
| セッション数 | Facebookに人為的な水増しなしで正常なセッション数が表示される |
| アトリビューションデータ | Singularレポートに正しいキャンペーンデータとともにFacebookインストールが表示される |
| Facebook機能 | Facebookログイン、共有、その他の機能がアプリで正しく動作する |
検証タイムライン: 初期設定後、データが両プラットフォームを通じて正しく流れるまで24〜48時間 待ってください。一部のデータは最初は遅延して表示される場合があります。
トラブルシューティング
Facebook SDKとSingular SDKを併用する際の一般的な問題と解決策です。
一般的な問題
症状
- Facebookのイベント数が期待値の2倍になっている
- 同じイベントが同一タイムスタンプで複数回表示される
- 水増しされた指標によりFacebookキャンペーンの最適化が影響を受けている
原因
Facebook SDKの自動イベントログが無効化されていないため、Facebook SDKと Singular SDKの両方が同じイベントをFacebookプラットフォームに送信しています。
解決策
-
iOS Info.plistで
FacebookAutoLogAppEventsEnabledがfalseに設定されていることを確認します -
Android AndroidManifest.xmlで
com.facebook.sdk.AutoLogAppEventsEnabledがfalseに設定されていることを確認します - アプリをクリーンビルドして設定が適用されていることを確認します
- 24時間Facebookイベントマネージャーを監視して問題が解決されたことを確認します
症状
- SingularレポートにFacebookインストールが表示されない
- インストールがFacebookキャンペーンではなくオーガニックとしてアトリビューションされる
- Singular分析でキャンペーンデータが欠落している
原因
SingularプラットフォームでアトリビューションパートナーとしてFacebookが設定されていないか、 Facebook App IDが欠落しているまたは誤っています。
解決策
- Singular → アトリビューション → パートナー設定に移動してFacebookを検索します
- Facebook App IDが正しく入力されていることを確認します
- Facebook連携が有効化されてアクティブであることを確認します
- アトリビューション期間の設定がキャンペーン要件と一致していることを確認します
- 完全な設定については Facebook広告アトリビューション連携 ガイドを参照してください
症状
- Facebookログインが失敗するかエラーを返す
- Facebook共有ボタンが機能しない
- アプリでFacebook SDK機能が使用できない
原因
自動イベントログが無効化されているにもかかわらず、Facebook SDKが正しく 初期化または設定されていません。
解決策
- アプリでFacebook SDKが正しく初期化されていることを確認します (自動ログの無効化はSDKの初期化に影響しません)
- アプリ設定でFacebook App IDと設定を確認します
- 特定の機能要件についてFacebook SDKのドキュメントを確認します
- 連携の問題を切り分けるためFacebook機能を個別にテストします
注: 自動イベントログの無効化はイベントトラッキングにのみ影響し、ログインや共有などの Facebookプラットフォーム機能には影響しません。これらの機能は引き続き正常に 動作するはずです。
追加リソース
FacebookとSingular SDK連携に関する完全なドキュメントです。
ドキュメントリンク
Singularリソース
- Singular SDK/S2Sの概要 - SDK連携の完全ガイド
- Facebook広告アトリビューション連携 - Facebookパートナー設定
- Facebookデータコネクター - コストとキャンペーンデータの集計
- Singular SDK連携のテスト - 検証とトラブルシューティング手順
Facebook開発者リソース
- iOSのFacebookアプリイベント - iOS SDK設定とイベントログ
- AndroidのFacebookアプリイベント - Android SDK設定とイベントログ
- Facebookモバイルアプリインストール広告 - 高度な広告機能と機能
サポート
サポートを受ける
FacebookとSingular SDKの連携についてさらにサポートが必要な場合は、Singularサポートに お問い合わせいただくか、カスタマーサクセスマネージャーにご相談ください。