NADInterstitialの内容 - fan-ADN/nendSDK-iOS GitHub Wiki

NADInterstitial の内容

@property (nonatomic, weak, readwrite) id<NADInterstitialLoadingDelegate> loadingDelegate; delegateオブジェクトの指定(任意)

@property (nonatomic, weak, readwrite) id<NADInterstitialClickDelegate> clickDelegate;
delegateオブジェクトの指定(任意)

@property (nonatomic) BOOL enableAutoReload;
広告クローズ後の自動リロードの指定(任意)
デフォルト:YES

メソッド

- (instancetype)sharedInstance;
インスタンスの生成および取得を行います

- (void)loadAdWithSpotID:(NSInteger)spotID apiKey:(NSString *)apiKey;
広告のロードを開始します

- (NADInterstitialShowResult) showAdFromViewController:(UIViewController*)viewController;
UIViewControllerを指定して広告を表示します
複数の広告がロードされている場合は、最後に読み込みに成功した広告枠を表示します
アプリ内で使用するインタースティシャル広告の枠が一つの場合はこちらをお使いください
設定するUIViewControllerは、ルートView ControllerのView Controller階層上への配置が完了している必要があります
View Controller 階層の詳細は、View Controller Programming Guide for iOSを参照ください
View Controller 階層への配置についての詳細は、UIViewController Class Referenceを参照ください

- (NADInterstitialShowResult) showAdFromViewController:(UIViewController*)viewController spotID:(NSInteger)spotID;
UIViewControllerと管理画面より発行されたSpotIDを指定して広告を表示します

- (BOOL)dismissAd;
広告を非表示にします (広告が表示から非表示に変化する場合にYESを返します)

- (void)didFinishLoadInterstitialAdWithStatus:(NADInterstitialStatusCode)status;
広告のロード結果を通知します。(任意)

- (void)didFinishLoadInterstitialAdWithStatus:(NADInterstitialStatusCode)status spotID:(NSInteger)spotID;
広告のロード結果と対象の広告のSpotIDを通知します。(任意)

- (void)didClickWithType:(NADInterstitialClickType)type;
クリックイベントを通知します。(任意)

- (void)didClickWithType:(NADInterstitialClickType)type spotID:(NSInteger)spotID;
クリックイベントと対象の広告のSpotIDを通知します。(任意)

引数のNADInterstitialStatusCodeおよびNADInterstitialClickTypeの内容につきましては、下記のサンプルコードをご参照ください。

デリゲート準拠とデリゲートオブジェクトの設定

Swift
import UIKit
import NendAd

class YourOriginalClass: UIViewController, NADInterstitialLoadingDelegate, NADInterstitialClickDelegate {

    override func viewDidLoad() {
        ...
        super.viewDidLoad()
        NADInterstitial.sharedInstance().loadingDelegate = self
        NADInterstitial.sharedInstance().clickDelegate = self
    }

}
Objective-C
#import <NendAd/NADInterstitial.h> // ヘッダファイルをインポートします

@interface YourOriginalClass() <NADInterstitialLoadingDelegate, NADInterstitialClickDelegate> // NADInterstitialLoadingDelegate, NADInterstitialClickDelegate に準拠します

@end

@implementation YourOriginalClass : UIViewController

- (void)initNADInterstitialSample
{
    ...
    // NADInterstitialLoadingDelegate, NADInterstitialClickDelegate プロトコルを実装したクラスを delegate プロパティにセットします。
    [NADInterstitial sharedInstance].loadingDelegate = self;
    [NADInterstitial sharedInstance].clickDelegate = self;
}

@end

広告のロード結果通知

Swift
func didFinishLoadInterstitialAd(withStatus status: NADInterstitialStatusCode) {
    switch (status) {
    case .SUCCESS:
        print("広告のロードに成功しました。")
        break
    case .INVALID_RESPONSE_TYPE:
        print("不正な広告タイプです。")
        break
    case .FAILED_AD_REQUEST:
        print("抽選リクエストに失敗しました。")
        break
    case .FAILED_AD_DOWNLOAD:
        print("広告のロードに失敗しました。")
        break
    }
}
Objective-C
- (void)didFinishLoadInterstitialAdWithStatus:(NADInterstitialStatusCode)status
{
    switch (status) {
        case SUCCESS:
            NSLog(@"広告のロードに成功しました。");
            break;
        case INVALID_RESPONSE_TYPE:
            NSLog(@"不正な広告タイプです。");
            break;
        case FAILED_AD_REQUEST:
            NSLog(@"抽選リクエストに失敗しました。");
            break;
        case FAILED_AD_DOWNLOAD:
            NSLog(@"広告のロードに失敗しました。");
            break;
    }
}

広告のロード結果と対象の広告のSpotIDを通知

Swift
func didFinishLoadInterstitialAd(withStatus status: NADInterstitialStatusCode, spotID: Int) {
    // 引数に対象の広告枠 ID を付与してロード結果を通知します
    switch (status) {
    case .SUCCESS:
        print("広告のロードに成功しました。")
        break
    case .INVALID_RESPONSE_TYPE:
        print("不正な広告タイプです。")
        break
    case .FAILED_AD_REQUEST:
        print("抽選リクエストに失敗しました。")
        break
    case .FAILED_AD_DOWNLOAD:
        print("広告のロードに失敗しました。")
        break
    }
}
Objective-C
- (void)didFinishLoadInterstitialAdWithStatus:(NADInterstitialStatusCode)status spotID: (NSInteger)spotID
{
    // 引数に対象の広告枠 ID を付与してロード結果を通知します
    switch (status) {
        case SUCCESS:
            NSLog(@"広告のロードに成功しました。");
            break;
        case INVALID_RESPONSE_TYPE:
            NSLog(@"不正な広告タイプです。");
            break;
        case FAILED_AD_REQUEST:
            NSLog(@"抽選リクエストに失敗しました。");
            break;
        case FAILED_AD_DOWNLOAD:
            NSLog(@"広告のロードに失敗しました。");
            break;
    }
}

クリックイベントの通知

Swift
func didClick(with type: NADInterstitialClickType) {
    switch (type) {
    case .DOWNLOAD:
        print("ダウンロードボタンがクリックされました。")
        break
    case .CLOSE:
        print("広告が閉じられました。")
        break
    case .INFORMATION:
        print("インフォメーションボタンがクリックされました。")
        break
    }
}
Objective-C
- (void)didClickWithType:(NADInterstitialClickType)type
{
    switch (type) {
        case DOWNLOAD:
            NSLog(@"ダウンロードボタンがクリックされました。");
            break;
        case CLOSE:
            NSLog(@"広告が閉じられました。");
            break;
        case INFORMATION:
            NSLog(@"インフォメーションボタンがクリックされました。");
            break;
    }
}

クリックイベントと対象の広告のSpotIDを通知

Swift
func didClick(with type: NADInterstitialClickType, spotID: Int) {
    // 引数に対象の広告枠 ID を付与してクリックイベントを通知します
    switch (type) {
    case .DOWNLOAD:
        print("ダウンロードボタンがクリックされました。")
        break
    case .CLOSE:
        print("広告が閉じられました。")
        break
    case .INFORMATION:
        print("インフォメーションボタンがクリックされました。")
        break
    }
}
Objective-C
- (void)didClickWithType:(NADInterstitialClickType)type spotId:(NSInteger)spotID
{
    // 引数に対象の広告枠 ID を付与してクリックイベントを通知します
    switch (type) {
        case DOWNLOAD:
            NSLog(@"ダウンロードボタンがクリックされました。");
            break;
        case CLOSE:
            NSLog(@"広告が閉じられました。");
            break;
        case INFORMATION:
            NSLog(@"インフォメーションボタンがクリックされました。");
            break;
    }
}
⚠️ **GitHub.com Fallback** ⚠️