Skip to content

激励视频广告

WARNING

请在广告初始化成功后调用, 另外所有API请在UI线程中调用。

创建广告

使用激励视频广告时,先创建激励视频广告对象:VX_RewardAd

objc
VX_RewardAd *rewardAd = [[VX_RewardAd alloc] init];

设置广告回调

激励视频广告在加载、播放、 关闭、点击等时机,都会通过监听VX_RewardAdDelegate,通知给游戏层:

objc

@interface AdViewController()<VX_RewardAdDelegate>
    //...
@end

@implementation AdViewController

- (void)vxAdRewardDidClicked { 
    //广告被点击
}

- (void)vxAdRewardDidClosed { 
    //广告被关闭
}

- (void)vxAdRewardDidEarnRewardWithName:(nonnull NSString *)name withCount:(nonnull NSDecimalNumber *)count { 
    
    //广告符合发放奖励的条件, 可以在这里给玩家发放奖励
}

- (void)vxAdRewardDidFailed:(VXAdErrorCode)code withMessage:(nonnull NSString *)message { 
    //广告播放失败
}

- (void)vxAdRewardDidLoadFailed:(VXAdErrorCode)code withMessage:(nonnull NSString *)message { 
    //广告加载失败
}

- (void)vxAdRewardDidLoaded { 
    //广告加载成功,可以在这里播放广告
    [self.rewardAd showAdWithController:self];
}


- (void)vxAdRewardDidShow {
    //广告曝光
}

- (void)vxAdRewardDidSkipped { 
    //广告被跳过
}

@end


// 设置回调
[rewardAd setDelegate:self];

加载广告

设置好监听器类后, 在需要的时机可以加载激励视频广告(为了避免播放时卡顿,建议可以提前加载激励视频广告):

objc
[rewardAd loadAdWithUnitId:adId controller:self rewardName:@"金币" rewardNum:@(0)];

参数说明:

参数名称参数类型参数说明
adIdString聚合SDK后台创建的聚合广告位ID,如果还没创建,可以参考文档:获取广告参数
controllerUIViewController当前游戏调用广告的宿主Controller
rewardNameString玩家观看激励视频广告后,获得的奖励名称
rewardNumNSNumber玩家观看激励视频广告后,获得的奖励数量

广告加载成功, 会触发上面监听器中的vxAdRewardDidLoaded事件; 加载失败, 会触发上面监听器中的vxAdRewardDidLoadFailed事件。

播放广告

广告加载成功后, 就可以在玩家点击广告播放按钮时,进行播放了:

objc
if ([rewardAd isAdReady]) {
    [rewardAd showAdWithController:self];
}

建议调用播放之前, 先通过isAdReady函数判断当前广告是否就绪, 如果就绪再播放。

版权所有© 2021-2030 上海丞诺网络科技有限公司