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.h
and adoptCERewardedVideoADRequestDelegate
protocol 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;
@end
Last updated