メインコンテンツへスキップ

概要

バックフィル広告は、メイン広告が読み込めない場合に代わりに表示される広告です。広告在庫が不足していたり、ネットワークの問題で広告を受信できなかった場合でも、空白なく他の広告を表示できます。

活用シナリオ

  • メイン広告ネットワークから広告を受信できなかった場合
  • 特定の地域や時間帯に広告在庫が不足している場合
  • 広告読み込み失敗時の代替広告表示

コンソール設定

バックフィル広告を使用するには、Adropコンソールでの設定が必要です。
1

広告ユニットの選択

Adropコンソール > Ad Unit でバックフィルを設定するユニットを選択します。
2

バックフィル設定

ユニット設定でバックフィル広告オプションを有効にし、バックフィルソースを選択します。
3

保存

設定を保存します。
詳細なコンソール設定はバックフィル広告ガイドを参照してください。

SDK実装

バックフィル広告はSDKで自動的に処理されます。メイン広告の読み込みが失敗すると、設定されたバックフィル広告が自動的に読み込まれます。

バナー広告のバックフィル

import AdropAds

class ViewController: UIViewController, AdropBannerDelegate {
    private var banner: AdropBanner?

    override func viewDidLoad() {
        super.viewDidLoad()

        // 通常のバナー広告と同じように実装
        banner = AdropBanner(unitId: "YOUR_UNIT_ID")
        banner?.delegate = self

        if let bannerView = banner {
            view.addSubview(bannerView)
            // Auto Layoutの設定...
        }

        banner?.load()
    }

    // バックフィル広告も同じデリゲートで処理
    func onAdReceived(_ banner: AdropBanner) {
        print("広告受信 (メイン広告またはバックフィル広告)")
    }

    func onAdFailedToReceive(_ banner: AdropBanner, _ errorCode: AdropErrorCode) {
        // メイン広告とバックフィル広告の両方が失敗した場合
        print("広告受信失敗: \(errorCode)")
    }
}

ネイティブ広告のバックフィル

ネイティブ広告も同じ方式でバックフィルが自動適用されます。
nativeAd = AdropNativeAd(unitId: "YOUR_UNIT_ID")
nativeAd?.delegate = self
nativeAd?.load()

// デリゲートでメイン広告またはバックフィル広告を受信
func onAdReceived(_ nativeAd: AdropNativeAd) {
    print("広告受信成功")
    // ビューにバインディング
}

バックフィルの動作方式

  1. SDKがメイン広告をリクエスト
  2. メイン広告の読み込み失敗時、自動的にバックフィル広告をリクエスト
  3. バックフィル広告受信成功 → onAdReceivedを呼び出し
  4. バックフィル広告も失敗 → onAdFailedToReceiveを呼び出し
バックフィル広告はコンソールで設定された場合にのみ動作します。SDKコードの変更なしに、コンソール設定だけでバックフィルを有効化/無効化できます。

ベストプラクティス

1. エラー処理

バックフィルまで失敗した場合に備えて、代替UIを準備してください。
func onAdFailedToReceive(_ banner: AdropBanner, _ errorCode: AdropErrorCode) {
    // メイン広告とバックフィルの両方が失敗
    // 代替コンテンツの表示または広告エリアを非表示
    bannerContainerView.isHidden = true

    // または自社プロモーションバナーを表示
    showPromotionBanner()
}

2. ロギング

デバッグモードでどの広告が読み込まれたかを確認してください。
func onAdReceived(_ banner: AdropBanner) {
    #if DEBUG
    print("広告受信成功 - Unit ID: \(banner.unitId)")
    #endif
}

3. 頻度制限

バックフィル広告が頻繁に表示される場合は、広告品質を監視してください。コンソールのダッシュボードでメイン広告とバックフィル広告の比率を確認できます。

関連ドキュメント