仿网易新闻客户端启动页动态加载广告思路

API_Cloud 发布于 2016/04/05 15:34
阅读 922
收藏 1

先来张效果图,图中,启动页面的广告图是通过api.imageCache从网上加载进来的,

概念:
首先要明确一个概念,不管是原生开发(iOS)还是APICloud开发的APP,都是不能在打包后修改启动图的,除非你的APP重新打包升级更新,以跟换启动图。

思路:
既然启动图无法更换,那网上那么多APP是如何做到启动页上动态的加广告呢?如网易新闻客户端那样。
其实,只要你细心就会发现,当你启动网易新闻客户端后立马显示在你眼前的是一个没有广告的启动图,一两秒后那些广告才显示出来的。
也就是说,它这个启动画面是分了两部分,一是真正的那个和APP一起打包的启动图,带广告那个其实是个背景图与前面真实启动图一样的伪启动图
不过由于他们两个图片的logo一样(位置),所以大家还认为那是同一个启动图,并且还在上面每天不断的跟换广告
说到这里,想必大家都明白如何用APICloud做这种启动广告了,无非就是关闭真实启动图后,立马用frame显示一个真实启动图一样的背景,然后再在上面加一个广告图而。

问题:
如果我只需要做一个铺满整个屏幕的的启动广告图那没什么问题,目前的APICloud完全能做到。但问题来了,如何做一个像网易新闻客户端那种,下半截漏一个LOGO出来的启动广告页,并且这个启动广告页上的LOGO要与前面真实启动页上的LOGO对齐,不错位,让用户感觉不出来你这是两个页面?因为APICloud可以生成安卓、苹果不同平台,不同屏幕尺寸的APP,我要如何去适配?有人说用html+css+js什么的能做到。且某前端高手也尝试过,无法适配各种尺寸的设备,LOGO会错位,还要放一张几M的启动图到APP中一起打包。

解决方案:
而我能想到的办法就是动态获取当前用户设备的启动图,他设备用多大尺寸、比例的图,我就用多大尺寸和比例的图来做广告页的背景图,这样就不会出现错位问题了。
那如何获取当前用户设备的启动图呢?我自己搞了个自定义模块。
现在模块提交到模块Store,需要漫长的等待官方审核。先弄个二维码和视频给大家体验下。

模块文档:

二维码:

PS
1、第一次启动后要等几秒钟,等广告图后台延迟获取并缓存,第二次启动广告就会展现出来了。
2、广告图可以点击。

视频:
http://v.youku.com/v_show/id_XMTQyNTQ3NzU1Mg==.html

 

作者:流风回雪

加载中
返回顶部
顶部