跳转到主要内容
PRODUCT DOCUMENTS

快速找到所需文档,高效完成接入与排障

浏览产品文档与友盟 Skill,展开目录并阅读正文。

激励互动广告

简介

激励任务广告,奖励触发机制:

  1. 互动类:奖励与用户的交互有关(如:打开App并停留等),在用户完成任务后,触发奖励验证和回调;

  2. 视频观看类:播放完毕后,触发奖励验证和回调。

主要API

使用说明:创建UMUnionRewardVideoAd对象来加载广告,通过设置UMUnionRewardVideoAdDelegate代理,获取广告相关回调。

代理回调方法说明

@protocol UMUnionRewardVideoAdDelegate <NSObject>
@optional
/// 请求广告数据成功回调
- (void)uadRewardVideoDidLoad:(UMUnionRewardVideoAd *)rewardVideoAd;

/// 请求广告数据失败回调
/// @param error 失败信息
- (void)uadRewardVideoDidLoad:(UMUnionRewardVideoAd *)rewardVideoAd failWithError:(NSError *_Nullable)error;

/// 广告渲染成功回调
/// 回调说明:媒体收到此回调后调用show接口
- (void)uadRewardVideoRenderSuccess:(UMUnionRewardVideoAd *)rewardVideoAd;

/// 广告渲染失败回调
/// 可能情况:渲染失败、展示时产生的异常
/// @param error 失败信息
- (void)uadRewardVideoRenderFail:(UMUnionRewardVideoAd *)rewardVideoAd error:(NSError *_Nullable)error;

/// 广告显示回调
- (void)uadRewardVideoExposeSuccess:(UMUnionRewardVideoAd *)rewardVideoAd;

/// 广告点击回调
- (void)uadRewardVideoClicked:(UMUnionRewardVideoAd *)rewardVideoAd;

/// 广告关闭回调
- (void)uadRewardVideoClose:(UMUnionRewardVideoAd *)rewardVideoAd;

/// 视频广告播放状态回调
- (void)uadRewardVideo:(UMUnionRewardVideoAd *)rewardVideoAd mediaPlayerStatus:(UMUnionMediaPlayerStatus)status;

/// 广告详情页即将打开
- (void)uadRewardVideoDetailViewWillPresent:(UMUnionRewardVideoAd *)rewardVideoAd;

/// 广告详情页关闭
- (void)uadRewardVideoDetailViewClosed:(UMUnionRewardVideoAd *)rewardVideoAd;

/// 激励视频广告播放达到激励条件回调,以此回调作为奖励依据
- (void)uadRewardVideoAdRewardDidSucceed:(UMUnionRewardVideoAd *)rewardVideoAd info:(nullable NSDictionary *)info verify:(BOOL)verify;

/// 激励视频广告未达到激励条件,校验失败
- (void)uadRewardVideoAdRewardDidFail:(UMUnionRewardVideoAd *)rewardVideoAd error:(NSError *_Nullable)error;;

@end

在实现上述事件回调之前,请务必先设置delegate:

rewardVideoAd.delegate = self;

调用接口说明

方法

说明

- (instancetype)initWithSlotId:(NSString *)slotId;

UMUnionRewardVideoAd实例构造方法,slotId为对应广告位id 

- (void)loadAdAndShow:(UIViewController *)rootViewController;

广告请求并显示,rootViewController:显示插播广告的UIViewController【必选】

- (void)loadAd;

广告请求,用于Load、Show分离场景

- (void)presentAdWithRootViewController:(UIViewController *)rootViewController;

广告展示,用于Load、Show分离场景

- (NSNumber *)eCPM;

出价策略有两种:1、PD约定价格,此时该字段返回固定值 -1 ,结算以合同约定的价格为准(可能是CPM固定价,可能是CPM阶梯价,也可能是CPC/CPS等);2、RTB价格,此时该字段返回实时出价,结算以此价格为依据。

- (void)muteEnable:(BOOL)flag;

视频类广告播放静音开关 YES:静音

接入代码示例

方式一:

- (IBAction)onLoadAndShow:(id)sender {
    self.rewardVideoAd = [[UMUnionRewardVideoAd alloc] initWithSlotId:@"100002886"];
    self.rewardVideoAd.delegate = self;
    [self.rewardVideoAd loadAdAndShow:self];
}

方式二:

- (IBAction)onLoad:(id)sender {
    self.rewardVideoAd = [[UMUnionRewardVideoAd alloc] initWithSlotId:@"100002886"];
    self.rewardVideoAd.delegate = self;
    [self.rewardVideoAd loadAd];
}

- (IBAction)onShow:(id)sender {
    if (self.rewardVideoAd) {
        [self.rewardVideoAd presentAdWithRootViewController:self];
    }
}