動画リワード広告クラスの説明 - glossom-dev/AdfurikunSDK-iOS GitHub Wiki

ADFmyMovieReward

クラスメソッド

+ (BOOL)isSupportedOSVersion;

サポート対象のiOSバージョンの場合trueを返します。


+ (void)initializeWithAppID:(NSString *)appID;
+ (void)initializeWithAppID:(NSString *)appID option:(NSDictionary*)option;
パラメータ 説明
appID 対象の広告枠ID

アドフリくん動画リワードの初期化を行います。 (既に読込開始している広告枠を指定した場合は、既存の読込が継続されます。)


+ (ADFmyMovieReward *)getInstance:(NSString *)appID delegate:(id<ADFmyMovieRewardDelegate>)delegate;
パラメータ 説明
appID 対象の広告枠ID
delegate デリゲート(後述)を実装したクラスのインスタンス

アドフリくん動画リワードのインスタンスを受け取ります。


+ (void)disposeAll;

アドフリくんSDKに保存されているADFmyMovieRewardインスタンスを全て破棄します。

インスタンスメソッド

-(void)load;
-(void)loadWithTimeout:(float)timeout;

各アドネットワークの広告ロードを開始します。

Timeoutが設定されていると広告読み込みの結果Callbackは必ずTimeout以内に発生します。Timeout設定について詳細内容はベストプラクティスを確認してください。


-(BOOL)isPrepared;

広告が表示できる状態の場合trueを返します。


-(void)play;
-(void)playWithCustomParam:(NSDictionary*)param;
-(void)playWithPresentingViewController:(UIViewController *)viewController;
-(void)playWithPresentingViewController:(UIViewController *)viewController customParam:(NSDictionary*)param;
パラメータ 説明
appID 対象の広告枠ID
param イベントにparam情報が送信されます
viewController アプリ最前面viewのUIViewController、基本的に「self」

広告を表示します。再生準備が完了したアドネットワークの中から、1つ動画が選択されます。 引数の無いplay関数を使うとアドフリSDKで一番上にあるViewControllerを取得して使用します。


-(void)dispose;

アドフリくんSDKに保持されたADFmyMovieRewardインスタンスを破棄します。ADFmyMovieRewardインスタンスを使わなくなった場合、dispose関数を呼び出して下さい。


ADFmyMovieRewardDelegate

- (void)AdsFetchCompleted:(NSString *)appID isTestMode:(BOOL)isTestMode_inApp;
- (void)AdsFetchCompleted:(NSString *)appID isTestMode:(BOOL)isTestMode_inApp isManualMode:(BOOL)isManualMode;

パラメータ 説明
appId 広告枠ID
isTestMode_inApp (この機能は現在未実装で、常にYESを返します)
isManualMode 広告枠のロードモードが手動モードの場合YESを返します。

広告のロード成功時に呼ばれます。


- (void)AdsDidShow:(NSString *)appID adnetworkKey:(NSString *)adnetworkKey;
パラメータ 説明
appID 広告枠ID
adnetworkKey 再生を開始したアドネットワークのアドネットワークキー

広告の再生開始時に呼ばれます。


- (void)AdsDidCompleteShow:(NSString *)appID;
パラメータ 説明
appID 広告枠ID

広告を最後まで視聴した時に呼ばれます。(アドネットワークによって呼ばれるタイミングが異なる場合がございます)


- (void)AdsDidHide:(NSString *)appID;
パラメータ 説明
appID 広告枠ID

広告を閉じた時に呼ばれます。


- (void)AdsFetchFailed:(NSString *)appID error:(NSError *)error;
- (void)AdsFetchFailed:(NSString *)appID error:(NSError *)error adnetworkError:(NSArray<AdnetworkError *> *)adnetworkError;
パラメータ 説明
appID 広告枠ID
error エラー情報
adnetworkError アドネットワークから発生したエラー内容です。詳細はアドネットワーク別エラーコード情報
error.code 説明 対応方法
203 ADNWから在庫が返却されなかった場合 広告取得に失敗するケース を確認する アドフリくん担当者に在庫状況を確認してもらう時間をおいて読み込みをリトライするように実装する
400 配信設定において利用可能なADNWが一つもなかった場合 広告取得に失敗するケース を確認する
500 配信設定の取得に失敗した場合 端末のネットワーク状況を確認する
999 前回のLoadingがまだ完了してない場合 読み込み成功・失敗Callbackが発生した後再度読み込みをするように実装変更

広告ロード失敗時に呼ばれます。


- (void)AdsPlayFailed:(NSString *)appID;
- (void)AdsPlayFailed:(NSString *)appID adnetworkError:(AdnetworkError *)adnetworkError;
パラメータ 説明
appID 広告枠ID
adnetworkError アドネットワークから発生したエラー内容です。詳細はアドネットワーク別エラーコード情報

動画の再生が失敗した場合に呼ばれます。発生理由は以下が考えられます。

発生理由
既に広告を再生している
オフライン状態でPlay関数を実行した
アドネットワークの広告再生関数の呼び出し時に異常が発生した
アドネットワーク側で広告再生時のエラーを検知した

この関数が呼ばれた際は、AdsDidCompleteShow, AdsDidHide は呼ばれません。アプリの実装に応じて必要であれば再度広告読み込みを行ってください。