183 lines
6.6 KiB
Objective-C
Executable File
183 lines
6.6 KiB
Objective-C
Executable File
//
|
||
// MTGInterstitialVideoAd.m
|
||
// MTGSDKInterstitialVideo
|
||
//
|
||
// Copyright © 2019 Mintegral. All rights reserved.
|
||
//
|
||
|
||
#import <Foundation/Foundation.h>
|
||
#if __has_include(<MTGSDK/MTGSDK.h>)
|
||
#import <MTGSDK/MTGRewardAdInfo.h>
|
||
#else
|
||
#import "MTGRewardAdInfo.h"
|
||
#endif
|
||
|
||
#define MTGInterstitialVideoSDKVersion @"7.1.4"
|
||
|
||
|
||
/**
|
||
We will call back the time when the user saw the alert message. The timing depends on the way you set MTGIVRewardMode
|
||
*/
|
||
typedef NS_ENUM(NSInteger,MTGIVRewardMode) {
|
||
MTGIVRewardCloseMode,//The alert was shown when the user tried to close the ad.
|
||
MTGIVRewardPlayMode//The alert was shown when the ad played to a certain extent
|
||
};
|
||
|
||
/**
|
||
We will call back whether the alert information has shown to the user and decision of the user.
|
||
*/
|
||
typedef NS_ENUM(NSInteger,MTGIVAlertWindowStatus) {
|
||
MTGIVAlertNotShown, //The alert window was not shown
|
||
MTGIVAlertChooseContinue,//The alert window has shown and the user chooses to continue which means he wants the reward.
|
||
MTGIVAlertChooseCancel //The alert window has shown and the user chooses to cancel which means he doesn’t want the reward.
|
||
};
|
||
|
||
@class MTGInterstitialVideoAdManager;
|
||
@class MTGBidInterstitialVideoAdManager;
|
||
|
||
/**
|
||
* This protocol defines a listener for ad video load events.
|
||
*/
|
||
@protocol MTGInterstitialVideoDelegate <NSObject>
|
||
@optional
|
||
|
||
/**
|
||
* Called when the ad is loaded , but not ready to be displayed,need to wait load video
|
||
completely
|
||
*/
|
||
- (void)onInterstitialAdLoadSuccess:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad is successfully load , and is ready to be displayed
|
||
*/
|
||
- (void)onInterstitialVideoLoadSuccess:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when there was an error loading the ad.
|
||
* @param error - error object that describes the exact error encountered when loading the ad.
|
||
*/
|
||
- (void)onInterstitialVideoLoadFail:(nonnull NSError *)error adManager:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
|
||
/**
|
||
* Called when the ad display success
|
||
*/
|
||
- (void)onInterstitialVideoShowSuccess:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad failed to display for some reason
|
||
* @param error - error object that describes the exact error encountered when showing the ad.
|
||
*/
|
||
- (void)onInterstitialVideoShowFail:(nonnull NSError *)error adManager:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called only when the ad has a video content, and called when the video play completed
|
||
*/
|
||
- (void)onInterstitialVideoPlayCompleted:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called only when the ad has a endcard content, and called when the endcard show
|
||
*/
|
||
- (void)onInterstitialVideoEndCardShowSuccess:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
|
||
/**
|
||
* Called when the ad is clicked
|
||
*/
|
||
- (void)onInterstitialVideoAdClick:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad has been dismissed from being displayed, and control will return to your app
|
||
* @param converted - BOOL describing whether the ad has converted
|
||
*/
|
||
- (void)onInterstitialVideoAdDismissedWithConverted:(BOOL)converted adManager:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad did closed;
|
||
*/
|
||
- (void)onInterstitialVideoAdDidClosed:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* If Interstitial Video reward is set, you will receive this callback
|
||
* @param achieved Whether the video played to required rate
|
||
* @param alertWindowStatus {@link MTGIVAlertWindowStatus} fro list of supported types
|
||
NOTE:You can decide whether to give the reward based on that callback
|
||
*/
|
||
- (void)onInterstitialVideoAdPlayVideo:(BOOL)achieved alertWindowStatus:(MTGIVAlertWindowStatus)alertWindowStatus adManager:(MTGInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
@end
|
||
|
||
@protocol MTGBidInterstitialVideoDelegate <NSObject>
|
||
@optional
|
||
|
||
/**
|
||
* Called when the ad is loaded , but not ready to be displayed,need to wait load video
|
||
completely
|
||
*/
|
||
- (void)onInterstitialAdLoadSuccess:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad is successfully load , and is ready to be displayed
|
||
*/
|
||
- (void)onInterstitialVideoLoadSuccess:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when there was an error loading the ad.
|
||
* @param error - error object that describes the exact error encountered when loading the ad.
|
||
*/
|
||
- (void)onInterstitialVideoLoadFail:(nonnull NSError *)error adManager:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
|
||
/**
|
||
* Called when the ad display success
|
||
*/
|
||
- (void)onInterstitialVideoShowSuccess:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad display success,It will be called only when bidding is used.
|
||
*/
|
||
- (void)onInterstitialVideoShowSuccess:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager bidToken:(NSString *_Nullable)bidToken;
|
||
|
||
/**
|
||
* Called when the ad failed to display for some reason
|
||
* @param error - error object that describes the exact error encountered when showing the ad.
|
||
*/
|
||
- (void)onInterstitialVideoShowFail:(nonnull NSError *)error adManager:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called only when the ad has a video content, and called when the video play completed
|
||
*/
|
||
- (void)onInterstitialVideoPlayCompleted:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called only when the ad has a endcard content, and called when the endcard show
|
||
*/
|
||
- (void)onInterstitialVideoEndCardShowSuccess:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
|
||
/**
|
||
* Called when the ad is clicked
|
||
*/
|
||
- (void)onInterstitialVideoAdClick:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad has been dismissed from being displayed, and control will return to your app
|
||
* @param converted - BOOL describing whether the ad has converted
|
||
*/
|
||
- (void)onInterstitialVideoAdDismissedWithConverted:(BOOL)converted adManager:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* Called when the ad did closed;
|
||
*/
|
||
- (void)onInterstitialVideoAdDidClosed:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
/**
|
||
* If Interstitial Video reward is set, you will receive this callback
|
||
* @param achieved Whether the video played to required rate
|
||
* @param alertWindowStatus {@link MTGIVAlertWindowStatus} fro list of supported types
|
||
NOTE:You can decide whether to give the reward based on that callback
|
||
*/
|
||
- (void)onInterstitialVideoAdPlayVideo:(BOOL)achieved alertWindowStatus:(MTGIVAlertWindowStatus)alertWindowStatus adManager:(MTGBidInterstitialVideoAdManager *_Nonnull)adManager;
|
||
|
||
@end
|