iOS设置启动页后的广告页

很多app(如淘宝、美团等)在启动图加载完毕后,还会显示几秒的广告,一般都有个跳过按钮可以跳过这个广告,有的app在点击广告页之后还会进入一个广告页面,点击返回进入首页。就像下面的效果。这个功能现在很常见,那么它是如何实现的呢?

思路

1.广告页加载思路。广告页的内容要实时显示,在无网络状态或者网速缓慢的情况下不能延迟加载,或者等到首页出现了再加载广告页。所以设置广告页时需要设置一个时间进行网络请求,在时间结束后如果没有请求到数据就直接到首页,请求到则加载数据。

2.广告页的显示方法有两种。

一种是直接新建一个自定义view添加到self.window上。

[self.window addSubview:adView];

另一种方法是新建一个广告controller。通过设置rootviewcontroller来更换界面。

[[UIApplication sharedApplication].delegatewindow].rootViewController = [[UINavigationController alloc] initWithRootViewController:[HomeViewControllernew]];

3.实现例子

只说不写例子没有直观的感受。

我写的Demo链接:ADLauncher.zip

新版demo:FinalADLauncher.zip修改点击活动进行跳转(两种方法)。

补充:在返回的图片为gif时,会出现第二次进入后动态图不播放的情况。可以做以下修改。(在销毁的时候清除sd的缓存。)在只有静态图的情况下不需要。

下面的是两个写的比较不错的三方库。

https://github.com/Running2snail/LLFullScreenAd(只能显示图片)

https://github.com/CoderZhuXH/XHLaunchAd(图片、视频)

4.广告页的显示代码可以放在AppDeleate中,也可以放在首页的控制器中。如果代码是在AppDelegate中,可以通过发送通知的方式,让首页push到广告详情页。直接Push的方法由于水平有限未实现,暂时未想到。

注意点

1.广告页面的底部和启动图的底部一般都是相同的,给我们的感觉就是启动图加载完之后把广告图放在了启动图上,而且不能有偏差,比如淘宝启动画面。美工在制作广告图的时候要注意这点。

2.研究了一下淘宝的广告显示机制,删除淘宝之后重新打开不会显示广告图片,第二次打开才会显示。美团的广告图有时候显示有时候不显示,所以后台在开发广告api的时候可以增加一个字段来判断是否启用广告

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 179,806评论 25 708
  • 昨天晚上和宝贝一起制作了小聘书 ,她非常开心的答应做我的小助教,有一种很自豪的感觉。 今天在当当将...
    简乔儿阅读 131评论 0 0
  • 教育创新呼唤“魅力型校长” 校长的人格魅力所形成的教育创新领导力是实现学校教育创新的基本要素。 一位好校长就是一所...
    汇建商学院张老师阅读 177评论 0 0
  • 童年放养过的星星 还是那个老样子 我却一天天长大了 童年栽种的枣树 睁着满树的眼睛 看得我心里甜滋滋的 童年玩泥巴...
    元气少女a阅读 1,069评论 11 36
  • 上午的案件接的太顺利以至于代理合同签完后的很长一段时间我的拍档都不敢相信是真的,但是事实却是真的。至于怎么走程序,...
    吴槿瑄阅读 238评论 0 1

友情链接更多精彩内容