你的位置:首页 > 操作系统

[操作系统]iOS启动页广告XHLaunchAd


iOS启动页广告XHLaunchAd

一.前言:

1.现在越来越多的App在启动时插入广告,因平时项目中常用到,所以特意写了一个库,他叫XHLaunchAd.
2.demo地址:网页链接
3.导入该库仅用几行简单的代码就能实现启动页静态/动态广告功能.
4.该项目发布2个月以来,已经收到 400 多个 star ,目前已经更新到V2.1.4版本,现分享给大家.

-> XHLaunchAd (2.1.3)
   几行代码接入启动页广告,自带图片下载、缓存相关功能,无任何第三方依赖,支持静态/动态、全屏/半屏广告,
   支持LaunchImage或者LaunchScreen.
   pod 'XHLaunchAd', '~> 2.1.4'
   - Homepage: https://github.com/CoderZhuXH/XHLaunchAd
   - Source:   https://github.com/CoderZhuXH/XHLaunchAd.git
   - Versions:2.1.4,2.1.3, 2.1.2, 2.1.1, 2.1.0, 2.0.1, 2.0, 1.2, 1.1.4, 1.1.3, 1.1.2,
   1.1, 1.0 [master repo]

三.XHLalunchAd特性:

  • 1.支持全屏/半屏广告.

  • 2.支持静态/动态广告.

  • 3.支持广告点击事件.

  • 4.自带图片下载,缓存功能.

  • 5.无依赖其他第三方框架.

  • 6.支持未检测到广告数据,设置启动页停留时间.

  • 7.支持启动页为LaunchImage或者LaunchScreen.storyboard.

四.API:

  • 主要提供两个API,调用非常简单

  • 1.初始化方法

/**
*  显示启动广告
*
*  @param frame      广告frame
*  @param setAdImage 设置AdImage回调
*  @param showFinish 广告显示完成回调
*/
+(void)showWithAdFrame : (CGRect)frame setAdImage :  (setAdImageBlock)setAdImage showFinish : (showFinishBlock)showFinish;
  • 2.数据源方法

/**
*  设置广告数据
*
*  @param imageUrl       图片url
*  @param duration       广告停留时间
*  @param skipType       跳过按钮类型
*  @param options        图片缓存机制
*  @param completedBlock 异步加载完图片回调
*  @param click          广告点击事件回调
*/
-(void)setImageUrl: (NSString*)imageUrl duration:  (NSInteger)duration skipType: (SkipType)skipType options: (XHWebImageOptions)options completed: (XHWebImageCompletionBlock)completedBlock click: (clickBlock)click;

五.调用:

  • 在AppDelegate中导入XHLaunchAd.h 头文件,在didFinishLaunchingWithOptions:中调用初始化方法和数据源方法即可,如下:

   //1.->显示启动广告(初始化方法)
[XHLaunchAd showWithAdFrame:广告frame大小 setAdImage: ^(XHLaunchAd *launchAd) {

         //未检测到广告数据,启动页停留时间,默认3,(设置4即表示:启动页显示了4s,还未检测到广告数据,就自动进入window根控制器)
         //launchAd.noDataDuration = 4;

         //2.->设置广告数据(数据源方法)
         [launchAd setImageUrl:广告图片URL链接 duration:停留时间 skipType:跳过按钮类型 options:缓存机制 completed:^(UIImage *image, NSURL *url) {

             //异步加载图片完成回调,若需根据图片尺寸,刷新广告frame,可在这里操作
             //launchAd.adFrame = ...;

         } click:^{

             //广告点击事件
             [[UIApplication sharedApplication] openURL:[NSURL URLWithString:广告点击跳转链接]];

         }];

} showFinish:^{

     //广告展示完成回调,设置window根控制器
     self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:[[UIViewController alloc] init]];

}];