• iOS设置启动页后的广告页


    转载请注明出处!!!

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

    1070332-8f80331f71b5b284.gif

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

    [self.window addSubview:adView];

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

    [[UIApplication sharedApplication].delegate window].rootViewController = [[UINavigationController alloc] initWithRootViewController:[HomeViewController new]];

    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的时候可以增加一个字段来判断是否启用广告

  • 相关阅读:
    poj-2478 Farey Sequence(dp,欧拉函数)
    codeforces 515C C. Drazil and Factorial(水题,贪心)
    hdu-5643 King's Game(打表)
    可以在命令行直接使用密码来进行远程连接和远程拉取文件的命令:sshpass
    查看SQL运行时间
    管理kafka
    No module named _sqlite3
    ps
    Redis之RDB与AOF
    Redis 4 参数解释
  • 原文地址:https://www.cnblogs.com/weicyNo-1/p/7387749.html
Copyright © 2020-2023  润新知