mergemilitary/Assets/Plugins/ToukaGames/ToponSDK/klevin/KlevinAdSDK.framework/Headers/KLNRewardedAd.h

74 lines
3.2 KiB
C
Raw Normal View History

//
// KLNRewardedAd.h
// KlevinAdSDK
//
// Copyright © 2021 Tencent. All rights reserved.
// Created by Klevin on 2021/4/20.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import <KlevinAdSDK/KLNAdReward.h>
#import <KlevinAdSDK/KLNAdRequest.h>
#import <KlevinAdSDK/KLNFullScreenContentDelegate.h>
#import <KlevinAdSDK/KLNAdVideoController.h>
NS_ASSUME_NONNULL_BEGIN
@class KLNRewardedAd;
/// 激励广告信息加载成功回调(视频素材未下载完成),此时调用播放会触发边拉边播体验
typedef void (^KLNRewardedAdDidLoadCallback)(KLNRewardedAd *_Nonnull rewardedAd);
/// 激励广告加载完成回调如果rewardedAd不为空则表示视频素材已下载完成。
/// 建议在此回调方法中进行广告的展示,可保证广告播放流畅展示,用户体验较好。
/// 如果激励广告加载过程产生失败则error对象不为空rewardedAd为空。建议重新加载广告
typedef void (^KLNRewardedAdLoadCompletionHandler)(KLNRewardedAd *_Nullable rewardedAd,
NSError *_Nullable error);
/// 激励广告
@interface KLNRewardedAd : NSObject<KLNFullScreenPresentingAd>
/// 当前激励广告绑定的激励内容
@property (nonatomic, readonly) KLNAdReward *adReward;
/// 视图展示/销毁消息回调代理
@property (nonatomic, weak, nullable) id<KLNFullScreenContentDelegate> fullScreenContentDelegate;
/// Controller for video play
@property (nonatomic, strong, readonly, nullable) KLNAdVideoController *videoController;
/// 加载激励广告方法
/// @param request 激励广告请求对象
/// @param completionHandler 广告加载结果回调(成功/失败)
+ (void)loadWithRequest:(KLNRewardedAdRequest *)request
completionHandler:(KLNRewardedAdLoadCompletionHandler)completionHandler;
/// 加载激励广告方法
/// @param request 激励广告请求对象
/// @param adLoadedCallback 激励广告信息加载成功回调(视频素材未下载完成),此时调用播放会触发边拉边播体验
/// @param completionHandler 广告加载结果回调(成功/失败)
+ (void)loadWithRequest:(KLNRewardedAdRequest *)request
adDidLoadHandler:(nullable KLNRewardedAdDidLoadCallback)adLoadedCallback
completionHandler:(KLNRewardedAdLoadCompletionHandler)completionHandler;
/// 判断激励广告是否可展示方法,请在主线程调用
/// Returns whether the rewarded ad can be presented from the provided root view
/// controller. Sets the error out parameter if the ad can't be presented. Must be called on the
/// main thread.
/// @param rootViewController 当前视图
/// @param error 错误信息
- (BOOL)canPresentFromRootViewController:(UIViewController *)rootViewController
error:(NSError *_Nullable __autoreleasing *_Nullable)error;
/// 展示激励广告,并指定用户获得奖励事件回调 KLNAdUserDidEarnRewardHandler
///
/// @param rootViewController 展示激励广告的视图
/// @param userDidEarnRewardHandler 处理获得奖励事件回调
- (void)presentFromRootViewController:(UIViewController *)rootViewController
userDidEarnRewardHandler:(KLNAdUserDidEarnRewardHandler)userDidEarnRewardHandler;
@end
NS_ASSUME_NONNULL_END