开屏广告

开屏广告

接入开屏广告(ZJSplashAd)

  • 类型说明: 开屏广告主要是 APP 启动时展示的全屏广告视图,开发只要按照接入标准就能够展示设计好的视图。

ZJSplashAd广告说明

@interface ZJSplashAd : ZJAd

@property(nonatomic,weak) id<ZJSplashAdDelegate> delegate;
/**
拉取广告超时时间,默认为3秒
详解:拉取广告超时时间,开发者调用loadAd方法以后会立即展示backgroundImage,
然后在该超时时间内,如果广告拉取成功,则立马展示开屏广告,否则放弃此次广告展示机会。
*/
@property (nonatomic, assign) CGFloat fetchDelay;

/**
 *  开屏自定义底部视图
 */
@property (nonatomic, strong) UIView *customBottomView;

/**
 *  开屏广告的可点击区域    默认:ZJSplashHotspotType_FullScreen
 */
@property (nonatomic, assign) ZJSplashHotspotType hotspotType;


/// 用于处理广告动作的视图控制器
@property (nonatomic, weak) UIViewController *_Nullable rootViewController;

/**
*  发起拉取广告请求,只拉取不展示
 详解:广告素材及广告图片拉取成功后会回调splashAdDidLoad方法
*/
- (void)loadAd;

/**
 *  展示广告,
  详解:广告展示成功时会回调zj_splashAdSuccessPresentScreen方法
 */
- (void)showAdInWindow:(UIWindow *)window;

/**
展示广告,调用此方法前需调用isAdValid方法判断广告素材是否有效
详解:广告展示成功时会回调splashAdSuccessPresentScreen方法,
展示失败时会回调zj_splashAdDisplayError:方法
*/
- (void)showAdInWindow:(UIWindow *)window withBottomView:(nullable UIView *)bottomView;

@end

开屏广告回调 ZJSplashAdDelegate

@protocol ZJSplashAdDelegate <NSObject>

@optional
/**
开屏广告素材加载成功
*/
-(void)zj_splashAdDidLoad:(ZJSplashAd *)splashAd;

/**
开屏广告成功展示
*/
-(void)zj_splashAdSuccessPresentScreen:(ZJSplashAd *)splashAd;

/**
开屏广告点击回调
*/
- (void)zj_splashAdClicked:(ZJSplashAd *)splashAd;

/**
开屏广告即将关闭回调
*/
- (void)zj_splashAdWillClose:(ZJSplashAd *)splashAd;

/**
开屏广告关闭回调
*/
- (void)zj_splashAdClosed:(ZJSplashAd *)splashAd;

/**
应用进入后台时回调
详解: 当点击下载应用时会调用系统程序打开,应用切换到后台
*/
- (void)zj_splashAdApplicationWillEnterBackground:(ZJSplashAd *)splashAd;

/**
开屏广告倒记时结束
*/
- (void)zj_splashAdCountdownEnd:(ZJSplashAd*)splashAd;

/**
开屏广告错误
*/
- (void)zj_splashAdError:(ZJSplashAd *)splashAd withError:(NSError *)error;

@end

bidding比价竞胜/竞败方法

  • 竞胜
/**
 * @brief 设置竞价价格,单位(分)
 * @param ecpm              竞价价格
 * @param highestLossEcpm   最大竞价失败方出价
 */
- (void)setBidEcpm:(NSInteger)ecpm
   highestLossEcpm:(NSInteger)highestLossEcpm
  • 竞败
/**
 * @brief 广告曝光失败后上报失败原因
 * @param failureCode 曝光失败原因类型
 * @param reportParam 曝光失败原因描述
 *        reportParam.winEcpm 胜出者的ecpm报价(单位:分)
 *        reportParam.adnType 胜出方,见ZJAdExposureReportParam.h 中ZJAdExposureAdnType定义
 *        reportParam.adnName 胜出平台名,见ZJAdExposureReportParam.h 中ZJAdADNType平台定义
 */
- (void)reportAdExposureFailed:(ZJAdExposureFailureCode)failureCode reportParam:(ZJAdExposureReportParam *)reportParam;

加载开屏广告

  • Objective-C
self.splashAd = [[ZJSplashAd alloc] initWithPlacementId:@"c887417368"];
self.splashAd.delegate = self;
self.splashAd.fetchDelay = 5.0;
self.splashAd.rootViewController = self;
self.splashAd.customBottomView = self.bottomView; // 自定义底部View
[self.splashAd loadAd];
  • Swift
splashAd = ZJSplashAd.init(placementId: "zjad_G9040714184494018");
splashAd.delegate = self;
splashAd.fetchDelay = 5.0;
splashAd.rootViewController = self;
splashAd.customBottomView = bottomView; // 自定义底部View
splashAd.load(); 

TIP

加载开屏广告具体示例详见Demo中的AppDelegate/ZjSplashViewController