# ワイプアド

アプリの画面上に、ワイプのように動画広告を表示するフォーマットになります。

表示の初期位置は画面上の四隅(右上,右下,左上,左下)をお選びいただき、
アプリの配色にあわせて、Light/Darkのテーマをご指定いただけます。

# サイズ仕様について

表示サイズについては横幅のみ任意の数値をご指定いただけますが、視認性確保のために、サイズについて上限と下限が定められております。
基本的に400(dp)などの大きな値を横幅としてご指定いただき、最大サイズ(デフォルト)で表示いただくことを想定しておりますが、
アプリ状況により細かくサイズをご指定いただく必要がある場合は、下記の最大サイズ〜最小サイズの範囲内でご指定ください。

# 最大サイズ(デフォルト)について

表示対象となる画面の高さと横幅を比較し、
画面の高さ < 画面の横幅 の場合は、高さの35%を最大値として、16:9の比率で横幅を算出して表示いたします。
画面の高さ > 画面の横幅 の場合は、横幅の53%を最大値として、16:9の比率で高さを算出して表示いたします。

最大サイズより大きな横幅の値をご指定いただいた場合は、上記のルールに基づいてリサイズされます。

# 最小サイズについて

最小の横幅は135dpとなります。
ご指定いただいた横幅が135dpを下回っていた場合、上記の最小サイズにリサイズされます。

# 表示の初期位置について

画面上の四隅(右上,右下,左上,左下)をお選びいただくことが可能です。

アプリ状況により、表示位置をずらしたい場合、マージンの値をご指定いただくことで、
右上 または 左上 をお選びいただいた場合は、ワイプアドに対してトップマージンが追加されます。
右下 または 左下 をお選びいただいた場合は、ワイプアドに対してボトムマージンが追加されます。

# 対応SDK

Ad Generation SDK

  • iOS v2.19.0~

# 対応バージョン

  • iOS 12.0以降

# SDK実装について

ADGWipeクラスのインスタンスを生成し、事前に preload() メソッドをコールいただき、広告をロードしてください。
正常にロード完了した場合、 iOS : ADGManagerViewControllerReceiveAd() のコールバックがおこなわれますので、
その後は任意のタイミングで show() メソッドをコールいただき、広告の表示をおこなってください。

ロード完了後、即時表示をおこないたい場合は、
iOS : ADGManagerViewControllerReceiveAd() のコールバック内に show() メソッドをコールいただくように記述してください。

API Reference

:::: tabs
::: tab Swift

import ADG

class SampleWipeViewController: UIViewController {
    private var adgWipe: ADGWipe?

    override func viewDidLoad() {
        super.viewDidLoad()

        // ADGWipeインスタンスを生成してください [広告ID, 表示位置, 表示位置に対してのマージン, ワイプアドの横幅, 表示対象のViewController] が必要になります
        adgWipe = ADGWipe.init(locationID: "xxxxxx", position: kADGWipePosition.adgWipePositionBottomRight, margin: 0, width: 200, rootViewController: self)

        // デリゲートをセットしてください
        adgWipe?.delegate = self

        // テストモードのONにする場合は有効化してください ※リリース時は必ずNOもしくは記述をコメントアウトしてください
        adgWipe?.setEnableTestMode(true)

        // フレームのテーマ色を指定してください 未指定の場合、デフォルトは kADGWipeThemeLight です
        adgWipe?.setWipeViewTheme(kADGWipeTheme.adgWipeThemeDark)

        // 広告のプリロード
        adgWipe?.preload()
    }

    override func viewDidDisappear(_ animated: Bool) {
        super.viewDidDisappear(animated)
        // ワイプアドを非表示にする
        adgWipe?.dismiss()
    }
}

extension ViewController: ADGWipeDelegate {
    // ワイプアドのレシーブ時に呼ばれるデリゲートメソッド
    func adgManagerViewControllerReceiveAd(_ adgManagerViewController: ADGManagerViewController) {
        print("Received an ad.")
        // 広告表示
        adgWipe?.show()
    }

    // 広告のエラー時に呼ばれるデリゲートメソッド
    func adgManagerViewControllerFailed(toReceiveAd adgManagerViewController: ADGManagerViewController, code: kADGErrorCode) {
        print("Failed to receive an ad.")
        switch code {
        case .adgErrorCodeNeedConnection, // ネットワーク不通
             .adgErrorCodeExceedLimit, // エラー多発
             .adgErrorCodeNoAd: // 広告レスポンスなし
            break
        default:
            break
        }
    }

    // 広告のタップ時に呼ばれるデリゲートメソッド
    func adgManagerViewControllerDidTapAd(_ adgManagerViewController: ADGManagerViewController) {
        print("Did tap ad.")
    }

    // ワイプアドのクローズ時に呼ばれるデリゲートメソッド
    func adgWipeClose() {
        print("Closed wipe ads")
    }
}

:::
::: tab Objective-C

#import "ADGWipe.h"

@interface WipeViewController : UIViewController <ADGWipeDelegate>

@property (nonatomic) ADGWipe *wipe;

@end

@implementation SampleWipeViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    if (self.wipe) {
        [self.wipe dismiss];
    }

    // ADGWipeインスタンスを生成してください [広告ID, 表示位置, 表示位置に対してのマージン, ワイプアドの横幅, 表示対象のViewController] が必要になります
    self.wipe = [[ADGWipe alloc] initWithLocationID:"xxxxxx" position:kADGWipePositionBottomRight margin:0.0f width:200 rootViewController:self];

    // デリゲートをセットしてください
    self.wipe.delegate = self;

    // テストモードのONにする場合は有効化してください ※リリース時は必ずNOもしくは記述をコメントアウトしてください
    // [self.wipe setEnableTestMode:YES];

    // フレームのテーマ色を指定してください 未指定の場合、デフォルトは kADGWipeThemeLight です
    [self.wipe setWipeViewTheme:kADGWipeThemeDark];

    // 広告のプリロード
    [self.wipe preload];
}

- (void)viewDidDisappear:(BOOL)animated {
    [super viewDidDisappear:animated];

    // ワイプアドを非表示にする
    [self.wipe dismiss];
}

- (void)dealloc {
    self.wipe.delegate = nil;
    self.wipe = nil;
}

// ワイプアドのレシーブ時に呼ばれるデリゲートメソッド
- (void)ADGManagerViewControllerReceiveAd:(ADGManagerViewController *)adgManagerViewController {
    NSLog(@"Received an ad.");
    // 広告表示
    [self.wipe show];
}

// 広告のエラー時に呼ばれるデリゲートメソッド
- (void)ADGManagerViewControllerFailedToReceiveAd:(ADGManagerViewController *)adgManagerViewController
                                             code:(kADGErrorCode)code {
    NSLog(@"Failed to receive an ad.");
    switch (code) {
        case kADGErrorCodeNeedConnection:   // ネットワーク不通
        case kADGErrorCodeExceedLimit:      // エラー多発
        case kADGErrorCodeNoAd:             // 広告レスポンスなし
            break;
        default:
            break;
    }
}

// 広告のタップ時に呼ばれるデリゲートメソッド
- (void)ADGManagerViewControllerDidTapAd:(ADGManagerViewController *)adgManagerViewController {
    NSLog(@"Did tap ad.");
}

// ワイプアドのクローズ時に呼ばれるデリゲートメソッド
- (void)ADGWipeClose {
    NSLog(@"Closed wipe ads.");
}

@end

:::
::::

Note

ワイプアドでは、Ad Generation SDKに内包されているxibファイルを参照いたします。
そのため、マニュアルインストールにてSDKをご利用いただく場合、弊社SDK内に含まれるリソースファイルを別途Xcodeプロジェクトへ追加することが必須となります。

〜v2.22.2まではADG.framework/ADG-Resources.bundle をXcodeのプロジェクトナビゲータの任意の場所にドラッグ&ドロップするか、
右クリック > Add Files to ... を選択し、"Copy items if needed"にチェックがついていることを確認して、Finishを押して、追加をしてください。
(CocoaPodsでのインストールでは自動で追加されるため、この作業は必要ございません。)

v2.23.0以降はADG-Resources.bundleを利用いたしませんので、追加いただく必要はございません。

詳細はAd Generation iOSSDKバナー導入マニュアルの[1. SDKをダウンロードする]をご参照ください。

# 表示例

iPhone11 Pro(Light) iPhone11 Pro(Dark) デフォルトサイズ
198x111
iPhone11 Pro Max(Light) iPhone11 Pro Max(Dark) デフォルトサイズ
219x123
iPhoneSE2(縦)(Light) iPhoneSE2(縦)(Dark) デフォルトサイズ
198x111
iPhoneSE2(横)(Light) iPhoneSE2(横)(Dark) デフォルトサイズ
353x198
iPad Pro(12.9inch)(縦)(Light) iPad Pro(12.9inch)(縦)(Dark) デフォルトサイズ
542x305
iPad Pro(12.9inch)(横)(Light) iPad Pro(12.9inch)(横)(Dark) デフォルトサイズ
637x358
Last Updated: 4/2/2024, 1:23:13 AM