mergemilitary/Assets/Plugins/ToukaGames/ToponSDK/kuaishou/KSAdSDK.framework/Headers/KSNativeAd.h

123 lines
3.2 KiB
Objective-C
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// KSNativeAd.h
// KSAdSDK
//
// Created by 徐志军 on 2019/10/11.
// Copyright © 2019 KuaiShou. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "KSAd.h"
#import "KSMaterialMeta.h"
NS_ASSUME_NONNULL_BEGIN
@protocol KSNativeAdDelegate;
@interface KSNativeAd : KSAd
/**
Ad material.
*/
@property (nonatomic, strong, readonly, nullable) KSMaterialMeta *data;
/**
The delegate for receiving state change messages.
The delegate is not limited to viewcontroller.
The delegate can be set to any object which conforming to <KSNativeAdDelegate>.
*/
@property (nonatomic, weak, readwrite, nullable) id<KSNativeAdDelegate> delegate;
/**
required.
Root view controller for handling ad actions.
Action method includes 'pushViewController' and 'presentViewController'.
*/
@property (nonatomic, weak, readwrite) UIViewController *rootViewController;
/**
Register clickable views in native ads view.
Interaction types can be configured on TikTok Audience Network.
Interaction types include view video ad details page, make a call, send email, download the app, open the webpage using a browser,open the webpage within the app, etc.
@param containerView : required.
container view of the native ad.
@param clickableViews : optional.
Array of views that are clickable.
*/
- (void)registerContainer:(__kindof UIView *)containerView withClickableViews:(NSArray<__kindof UIView *> *_Nullable)clickableViews;
/**
Unregister ad view from the native ad.
*/
- (void)unregisterView;
- (id)initWithPosId:(NSString *)posId;
/**
Actively request nativeAd datas.
*/
- (void)loadAdData;
/**
Actively json nativeAd datas.
*/
- (void)loadAdDataWithDictionary:(NSDictionary *)dictionary;
//- (void)reset;
- (void)reportVideoStartPlay;
- (void)reportVideoEndPlay;
@end
@protocol KSNativeAdDelegate <NSObject>
@optional
/**
This method is called when native ad material loaded successfully.
*/
- (void)nativeAdDidLoad:(KSNativeAd *)nativeAd;
/**
This method is called when native ad materia failed to load.
@param error : the reason of error
*/
- (void)nativeAd:(KSNativeAd *)nativeAd didFailWithError:(NSError *_Nullable)error;
/**
This method is called when native ad show everytime. Please dont use for exposure count. Please use 'nativeAdDidShow' for exposure count.
*/
- (void)nativeAdDidBecomeVisible:(KSNativeAd *)nativeAd;
/**
This method is called when native ad is clicked.
*/
- (void)nativeAdDidClick:(KSNativeAd *)nativeAd withView:(UIView *_Nullable)view;
/**
This method is called when another controller has been showed.
@param interactionType : open appstore in app or open the webpage or view video ad details page.
*/
- (void)nativeAdDidShowOtherController:(KSNativeAd *)nativeAd interactionType:(KSAdInteractionType)interactionType;
/**
This method is called when another controller has been closed.
@param interactionType : open appstore in app or open the webpage or view video ad details page.
*/
- (void)nativeAdDidCloseOtherController:(KSNativeAd *)nativeAd interactionType:(KSAdInteractionType)interactionType;
/**
This method is called when native ad show. Each ad is called back only once
*/
- (void)nativeAdDidShow:(KSNativeAd *)nativeAd;
@end
NS_ASSUME_NONNULL_END