美文网首页iOS小知识iOS 移动端开发
iOS 开屏广告(App启动广告)解决方案-- 一款强大的开源库

iOS 开屏广告(App启动广告)解决方案-- 一款强大的开源库

作者: 9d8c8692519b | 来源:发表于2017-10-10 11:01 被阅读177次

    越来越多的app(如今日头条、爱奇艺、淘宝、美团等)在启动图加载完毕后,还会显示几秒的广告,一般都有个跳过按钮可以跳过这个广告,有的app在点击广告页之后还会进入一个广告页面,点击返回进入首页。虽然说这个广告页面对用户体验来说并不是很好,但是如果真的有这个需求,我们还是要想办法去开发,至少这比内嵌广告要友善的多。今天我们就来介绍一款强大的广告页面解决方案-- 一款强大的开源库XHLaunchAdXHLaunchAd框架目前已经有如下特性,支持:

    1.支持静态/动态图片广告.
    2.支持mp4视频广告.
    3.支持全屏/半屏广告.
    4.支持网络及本地资源.
    5.兼容iPhone和iPad.
    6.支持广告点击事件.
    7.支持跳过按钮的自定义,添加子视图等.
    8.支持设置数据等待时间.
    9.自带图片/视频下载,缓存功能.
    10.支持预缓存图片及视频.
    11.支持设置完成动画.
    12.支持清除指定资源缓存.

    实现效果如下图(仅以图片广告、视频广告为例展示):

    图片类型广告示例.gif 视频类型广告示例.gif

    简述

    XHLaunchAd 耦合性非常好,通过类 XHLaunchAdManager 的类方法+(void)load 加载方法实现了开屏广告的初始化。在初始化方法中又通过使用增加观察者的使用达到了开屏广告对业务层无干扰的效果,个人觉得实现的非常完美。

    - (instancetype)init
    {
        self = [super init];
        if (self) {
    
            //在UIApplicationDidFinishLaunching时初始化开屏广告,做到对业务层无干扰
            //当然你也可以直接在AppDelegate didFinishLaunchingWithOptions方法中初始化
            [[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationDidFinishLaunchingNotification object:nil queue:nil usingBlock:^(NSNotification * _Nonnull note) {
                
                //初始化开屏广告
                [self setupXHLaunchAd];
            }];
        }
        return self;
    }
    

    框架的还有很多的其他细节实现,你可以通过👇链接前往下载、查看。有任何问题欢迎留言交流。。

    附:

    你可能对XHLaunchAd 的类方法 +(void)load 加载方法 实现了开屏广告的初始化 感兴趣, 点击前往有关于 +(void)load的介绍

    关注我,获取更多精彩的iOS 开发内容。
    开屏广告解决方案-下载地址

    相关文章

      网友评论

        本文标题:iOS 开屏广告(App启动广告)解决方案-- 一款强大的开源库

        本文链接:https://www.haomeiwen.com/subject/pzqvyxtx.html