フルボード広告 - fan-ADN/nendSDK-cocos2d-x GitHub Wiki

事前準備

まだ広告枠の作成、SDKのダウンロードを行っていない場合、下記リンク先を参照してください。

フルボード広告枠作成手順

nend管理画面「新規広告枠の作成」から下記項目を選択し、広告枠を作成します。

  • 広告枠のタイプ:「ネイティブアド」
  • 広告枠名:任意
  • 実装タイプ:「SDK」
  • 広告画像選択:「横長(5:3)の大きい広告画像」
  • 広告表示数:「1ヶ所のみ」

SDKの組み込み

プロジェクトにSDKとモジュールを追加します。

フルボード広告実装手順

ヘッダーファイルの宣言を追加

#include "NendFullBoardAd.h"

インスタンスの生成

nend_module::NendFullBoardAd fullBoardAd = new nend_module::NendFullBoardAd("SPOT ID", "API KEY");

広告のロード

fullBoardAd->load();

広告の表示

fullBoardAd->show();

注意: フルボード広告を閉じた際、自動で広告のリロードは行われません。広告内容を更新する場合は再度ロード処理を実行する必要があります。

Safe Area の外側の背景色について

iPhoneXのSafe Area外の背景色を、アプリのデザインに合わせ変更することが可能です。
cocos2d::Color4F構造体を利用して色を指定して下さい。

定数で指定する例

fullBoardAd->setBackgroundColor4F(cocos2d::Color4F::WHITE);

floatで指定する例

fullBoardAdTop->setBackgroundColor4F(cocos2d::Color4F(1.f, 1.f, 1.f, 1.f));

詳細についてはiOS向けのWiki「Safe Area の外側の背景色について」をご参照ください。

イベント通知(オプション)

広告ロード成功時

fullBoardAd->onFullBoardAdLoaded = [this](const nend_module::NendFullBoardAd& ad) {
    log("onFullBoardAdLoaded");
};

広告ロード失敗時

fullBoardAd->onFullBoardAdFailedToLoad = [this](const nend_module::NendFullBoardAd& ad, const nend_module::NendFullBoardAd::ErrorType error) {
    log("onFullBoardAdFailedToLoad : error type");
    switch (error) {
        case nend_module::NendFullBoardAd::ErrorType::FAILED_TO_AD_REQUEST:
            log("Failed to ad request.");
            break;
        case nend_module::NendFullBoardAd::ErrorType::FAILED_TO_DOWNLOAD_IMAGE:
            log("Failed to download image.");
            break;
        case nend_module::NendFullBoardAd::ErrorType::INVALID_AD_SPACES:
            log("Invalid ad spaces specified.");
            break;
        default:
            break;
    }
};

広告表示時

fullBoardAd->onFullBoardAdShown = [this](const nend_module::NendFullBoardAd& ad) {
    log("onFullBoardAdShown");
};

広告クローズ時

fullBoardAd->onFullBoardAdDismissed = [this](const nend_module::NendFullBoardAd& ad) {
    log("onFullBoardAdDismissed");
};

広告クリック時

fullBoardAd->onFullBoardAdClicked = [this](const nend_module::NendFullBoardAd& ad) {
    log("onFullBoardAdClicked");
};