Rewarded Video Ad
Add Files for Rewarded Video Ad Integration
Add CERewardedVideoAD.h and CERewardedVideoAD.m to your app's build target.
Request Rewarded Video Ad
Import
CERewardedVideoAD.hand adoptCERewardedVideoADRequestDelegateprotocol in view controller's extension.
// MyViewController.m
#import "CERewardedVideoAD.h"
@interface MyViewController() <CERewardedVideoADRequestDelegate>Load ad in
viewDidLoad
@interface MyViewController() <CERewardedVideoADRequestDelegate>
@property (nonatomic, strong) CERewardedVideoAD *rewardedVideoAD;
@end
- (void) viewDidLoad
{
CERequestInfo *info = [CERequestInfo new];
info.placement = @"PUT_YOUR_PLACEMENT_STRING_HERE·";
info.timeout = 5;
self.rewardedVideoAD = [CERewardedVideoAD new];
self.rewardedVideoAD.delegate = self;
[self.rewardedVideoAD loadAdAsyncWithInfo:info reqDelegate:self];
}Implement
rewardedVideoADDidLoaded:to handle ad loaded event.
#pragma mark - CERewardedVideoADRequestDelegate
- (void)rewardedVideoADDidLoaded:(CERewardedVideoAD*)rewardedVideoAD
{
UIViewController *topController = [UIApplication sharedApplication].keyWindow.rootViewController;
while (topController.presentedViewController) {
topController = topController.presentedViewController;
}
[self.rewardedVideoAD showFromViewController:topController animated:YES];
}Add CERewardedVideoADEventDelegate to get the ad event callback.
CERewardedVideoADEventDelegate to get the ad event callback.If you want to trace the click, impression, progress event, please implement CERewardedVideoADEventDelegate to handle it.
#pragma mark - CERewardedVideoADEventDelegate
/*!
* @brief protocol of CERewardedVideoADEventDelegate that can receive AD events
*/
@protocol CERewardedVideoADEventDelegate <NSObject>
@optional
/*!
* @brief callback while this rewardedVideo ad is clicked by user
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidClick:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback while this rewardedVideo ad is video format and muted.
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidMute:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback while this rewardedVideo ad is video format and unmuted.
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidUnmute:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback while rewardedVideo ad impression
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADImpression:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback while this rewardedVideo ad is video format and start playback.
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidVideoStart:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback while this rewardedVideo ad reward user.
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidRewardUser:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback while this rewardedVideo ad is video format and playback to end.
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidVideoEnd:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback while this rewardedVideo ad is video format and progress state.
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
* @param totalDuration this video total duration time (ms)
* @param currentPosition this video current play back position time (ms)
*/
- (void) rewardedVideoADDidVideoProgress:(nonnull CERewardedVideoAD *)rewardedVideoAD
duration:(int)totalDuration
position:(int)currentPosition;
/*!
* @brief callback function while rewardedVideo AD did display from screen
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidDisplayed:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback function while rewardedVideo AD did dismiss from screen
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADDidDismiss:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback function while rewardedVideo AD will display to screen
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADWillDisplay:(nonnull CERewardedVideoAD *)rewardedVideoAD;
/*!
* @brief callback function while rewardedVideo AD will dismiss from screen
*
* @param rewardedVideoAD CERewardedVideoAD instance that own this rewardedVideo ad component
*/
- (void) rewardedVideoADWillDismiss:(nonnull CERewardedVideoAD *)rewardedVideoAD;
@endPlease refer to CERewardedVideoAD for more information in detail.
Last updated