Operation extensions for Splash Ads, providing ad display, cache checking, readiness checking, scenario statistics, and other features, including the definition of Extra keys.
extern NSString *const kATSplashExtraCountdownKey;
extern NSString *const kATSplashExtraTolerateTimeoutKey; // Timeout duration
extern NSString *const kATSplashExtraHideSkipButtonFlagKey;
extern NSString *const kATSplashExtraBackgroundImageKey;
extern NSString *const kATSplashExtraBackgroundColorKey;
extern NSString *const kATSplashExtraSkipButtonCenterKey;
extern NSString *const kATSplashExtraCustomSkipButtonKey; // Only supports UIButton
extern NSString *const kATSplashExtraCanClickFlagKey;
extern NSString *const kATSplashExtraShowDirectionKey; // Supports Kuaishou Splash Ads, default is vertical direction, 1 is horizontal direction
// 5.7.61+
extern NSString *const kATSplashExtraCountdownIntervalKey;
extern NSString *const kATSplashExtraPlacementIDKey;
extern NSString *const kATSplashExtraNetworkFirmID; // Ad platform ID
extern NSString *const kATSplashExtraAdSourceIDKey; // Ad Source ID
@protocol ATSplashDelegate;
@interface ATAdManager (Splash)
/// Called when loading an ad
/// @param placementID - The Ad Placement ID string to display
/// @param extra - Local configuration parameters
/// @param delegate - Delegate object
/// @param containerView - Bottom view
- (void)loadADWithPlacementID:(NSString *)placementID
extra:(NSDictionary *)extra
delegate:(id<ATSplashDelegate>)delegate
containerView:(UIView * _Nullable)containerView;
- (void)loadADWithPlacementID:(NSString *)placementID
extra:(NSDictionary *)extra
tkExtra:(NSDictionary * _Nullable)tkExtra
adxFloorPrice:(ATADXFloorPrice * _Nullable)adxFloorPrice
delegate:(id<ATSplashDelegate>)delegate
containerView:(UIView * _Nullable)containerView;
/// Called when displaying a Splash Ad
/// @param window The window to display the ad in
- (void)showSplashWithPlacementID:(NSString *)placementID
scene:(NSString *)scene
window:(UIWindow *)window
delegate:(id<ATSplashDelegate>)delegate DEPRECATED_MSG_ATTRIBUTE("Please use showSplashWithPlacementID:config:window:inViewController:extra:delegate: instead");
/// v5.7.61+
- (void)showSplashWithPlacementID:(NSString *)placementID
scene:(NSString *)scene
window:(UIWindow *)window
extra:(NSDictionary *_Nullable)extra
delegate:(id<ATSplashDelegate>)delegate DEPRECATED_MSG_ATTRIBUTE("Please use showSplashWithPlacementID:config:window:inViewController:extra:delegate: instead");
- (void)showSplashWithPlacementID:(NSString *)placementID
scene:(NSString *)scene
window:(UIWindow *)window
inViewController:(UIViewController *)viewController
delegate:(id<ATSplashDelegate>)delegate DEPRECATED_MSG_ATTRIBUTE("Please use showSplashWithPlacementID:config:window:inViewController:extra:delegate: instead");
/// v6.2.96+
/// - Parameter Notes:
/// - placementID: Ad Placement ID
/// - scene: Scenario ID
/// - window: Display container window, defaults to key window if nil
/// - viewController: Display container view controller, defaults to topmost view controller if nil
/// - extra: Extra parameters
/// - delegate: Event delegate
- (void)showSplashWithPlacementID:(NSString *)placementID
scene:(NSString *)scene
window:(UIWindow *)window
inViewController:(UIViewController *)viewController
extra:(NSDictionary *_Nullable)extra
delegate:(id<ATSplashDelegate>)delegate DEPRECATED_MSG_ATTRIBUTE("Please use showSplashWithPlacementID:config:window:inViewController:extra:delegate: instead");
- (void)showSplashWithPlacementID:(NSString *)placementID
config:(ATShowConfig *)config
window:(UIWindow *)window
inViewController:(UIViewController *)viewController
extra:(NSDictionary *_Nullable)extra
delegate:(id<ATSplashDelegate>)delegate;
/// Check whether the Splash Ad is ready
/// v5.7.06+
- (BOOL)splashReadyForPlacementID:(NSString *)placementID;
/// Check whether the Splash Ad is ready
/// @param send - Whether to send tracking events
- (BOOL)splashReadyForPlacementID:(NSString *)placementID
sendTK:(BOOL)send;
- (BOOL)splashReadyWithoutLogForPlacementID:(NSString *)placementID sendTK:(BOOL)send;
/// Get the status object ATCheckLoadModel for the current Ad Placement
- (nullable ATCheckLoadModel *)checkSplashLoadStatusForPlacementID:(NSString *)placementID;
/// Query all cached information for the Ad Placement
- (nullable NSArray<NSDictionary *> *)getSplashValidAdsForPlacementID:(NSString *)placementID;
/// Record the cache status statistics of the current Ad Placement in the business scenario
/// @param scene - Ad Scenario
/// v5.7.91+
- (void)entrySplashScenarioWithPlacementID:(NSString *)placementID
scene:(NSString *)scene;
@end