BUNativeExpressSplashView.h
4.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
//
// BUNativeExpressSplashView.h
// BUAdSDK
//
// Copyright © 2019 bytedance. All rights reserved.
//
#import <UIKit/UIKit.h>
#import "BUMaterialMeta.h"
#import "BUMopubAdMarkUpDelegate.h"
@class BUNativeExpressSplashView;
NS_ASSUME_NONNULL_BEGIN
@protocol BUNativeExpressSplashViewDelegate <NSObject>
/**
This method is called when splash ad material loaded successfully.
*/
- (void)nativeExpressSplashViewDidLoad:(BUNativeExpressSplashView *)splashAdView;
/**
This method is called when splash ad material failed to load.
@param error : the reason of error
*/
- (void)nativeExpressSplashView:(BUNativeExpressSplashView *)splashAdView didFailWithError:(NSError * _Nullable)error;
/**
This method is called when rendering a nativeExpressAdView successed.
*/
- (void)nativeExpressSplashViewRenderSuccess:(BUNativeExpressSplashView *)splashAdView;
/**
This method is called when a nativeExpressAdView failed to render.
@param error : the reason of error
*/
- (void)nativeExpressSplashViewRenderFail:(BUNativeExpressSplashView *)splashAdView error:(NSError * __nullable)error;
/**
This method is called when nativeExpressSplashAdView will be showing.
*/
- (void)nativeExpressSplashViewWillVisible:(BUNativeExpressSplashView *)splashAdView;
/**
This method is called when nativeExpressSplashAdView is clicked.
*/
- (void)nativeExpressSplashViewDidClick:(BUNativeExpressSplashView *)splashAdView;
/**
This method is called when nativeExpressSplashAdView's skip button is clicked.
*/
- (void)nativeExpressSplashViewDidClickSkip:(BUNativeExpressSplashView *)splashAdView;
/**
This method is called when nativeExpressSplashAdView countdown equals to zero
*/
- (void)nativeExpressSplashViewCountdownToZero:(BUNativeExpressSplashView *)splashAdView;
/**
This method is called when nativeExpressSplashAdView closed.
*/
- (void)nativeExpressSplashViewDidClose:(BUNativeExpressSplashView *)splashAdView;
/**
This method is called when when video ad play completed or an error occurred.
*/
- (void)nativeExpressSplashViewFinishPlayDidPlayFinish:(BUNativeExpressSplashView *)splashView didFailWithError:(NSError *)error;
/**
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)nativeExpressSplashViewDidCloseOtherController:(BUNativeExpressSplashView *)splashView interactionType:(BUInteractionType)interactionType;
@end
@interface BUNativeExpressSplashView : UIView <BUMopubAdMarkUpDelegate>
/**
The delegate for receiving state change messages.
*/
@property (nonatomic, weak, nullable) id<BUNativeExpressSplashViewDelegate> delegate;
/**
Maximum allowable load timeout, default 3s, unit s.
*/
@property (nonatomic, assign) NSTimeInterval tolerateTimeout;
/**
Whether hide skip button, default NO.
If you hide the skip button, you need to customize the countdown.
*/
@property (nonatomic, assign) BOOL hideSkipButton;
/**
Whether the splash ad data has been loaded.
*/
@property (nonatomic, getter=isAdValid, readonly) BOOL adValid;
/// media configuration parameters.
@property (nonatomic, copy, readonly) NSDictionary *mediaExt;
/**
Initializes native express splash ad with slot id and frame.
@param slotID : the unique identifier of splash ad
@param adSize : the adSize of native express splashAd view. It is recommended for the mobile phone screen.
@param rootViewController : the root controller for present splash.
@return BUNativeExpressSplashView
*/
- (instancetype)initWithSlotID:(NSString *)slotID adSize:(CGSize)adSize rootViewController:(UIViewController *)rootViewController;
/**
Initializes Express Splash video ad with ad slot, adSize and rootViewController.
@param slot A object, through which you can pass in the splash unique identifier, ad type, and so on.
@param adSize the adSize of native express splashAd view. It is recommended for the mobile phone screen.
@param rootViewController the root controller for present splash.
@return BUNativeExpressSplashView
*/
- (instancetype)initWithSlot:(BUAdSlot *)slot adSize:(CGSize)adSize rootViewController:(UIViewController *)rootViewController;
/**
Load splash ad datas.
Start the countdown(@tolerateTimeout) as soon as you request datas.
*/
- (void)loadAdData;
/**
Remove splash view.
Stop the countdown as soon as you call this method.
移除开屏视图
一旦调用这个方法,倒计时将自动停止
*/
- (void)removeSplashView;
@end
NS_ASSUME_NONNULL_END