APP 开屏广告设计之路

设计 APP 开屏广告的初衷很简单,为了带来收入。当然同样还有宣传和推广的作用,那本文就来谈谈作者 APP 开屏广告的设计之路。

为什么要做?

其实很简单,为了钱!
当一个 APP 积累了一定的用户量时,除了 APP 自身内容产生商业价值外,老板就会要求寻求更多能带来收入的功能。广告是目前大多数产品的主要盈利手段,在 APP 中,启动广告的报价一般都是最高和争抢的。
当然,启动广告除了可以投放商业广告外,还可以宣传和推广公司的新产品、新活动等内容。

怎么做?

初次接到需求时,简单看了一些竞品,觉得十分简单(主要是当时自己经验不足,初入行半年左右),简单设计了一个方案就进入开发阶段,之后上线。上线之后遇到各类情况以及新的需求,让我发现看似简单的开屏广告,却不简单。

初次上手

最初,接到需求后,设计的方案如下:
> 在广告系统建立“APP 开屏广告”广告位,广告位中可以添加多个广告,用户每次启动 APP 时,随机获取该广告位中的一个广告。

开发,测试,上线,完美!

二次改进

刚开始一切完美,广告正常展现、跳转正常。可不多久,就发现了问题:

  • 网络不佳时,广告图片加载慢,造成倒计时结束图片还没加载出来,屏幕白屏情况;
  • 用户如果通过 home 键(尤其是 iPhone)切出 APP 后,由于 APP 进程未杀死,用户再次进入 APP 时就不会再出现广告,可能造成用户长时间段内不会看到广告,这与商业初衷相背离。

基于以上原因,开始了第二次迭代,方案如下:

  • 针对网络慢等造成图片无法加载的问题:APP 每次启动时,都将所有的后台广告缓存到本地,用户再次启动 APP 时,从缓存中随机获取一个广告并展示,同时程序更新缓存的广告。
  • 针对用户 home 键切出 APP 的问题:用户每次进入 APP 时(即使是通过 home 键切出后再切回),都展示广告。(真不知道自己当时是怎么想的,这么影响用户体验的需求竟然也能提)

开发,测试,上线,完美!

三次迭代

本以为一切完美,这个需求算是解决了,但使用过程中又遇到了问题:

  • 广告是有时效性的:如果一个活动到 1 月 31 号结束,广告推广时间是 1 月 20 号 -1 月 31 号,一个用户在 1 月 20 号打开了 APP,这时由于广告缓存的原因,这个用户没有看到这个广告,但这个广告已经缓存到了本地;假设该用户下一次启动 APP 的时间是 2 月 1 号,由于缓存,该用户看到了这个广告,点击了链接,结果却发现活动已经结束,这在用户体验上是有问题的。
  • 每次切出 APP 再切回 APP 都展示广告,很明显,这个做法太影响体验,造成用户抱怨太多。

老板发火,不好惹,加班改!
APP 缓存广告图片时,同时将 APP 的起止日期数据缓存下来,下次展示广告时,先判断缓存的广告是否在有效期内,不在的都不展示。
通过 home 键切出切回的情况:AM6:00 – PM2:00:如果当前时间内没有显示过广告,则显示一次,显示过则不再显示;PM2:00 – 第二天 AM6:00:如果当前时间内没有显示过广告,则显示一次,显示过则不再显示。(这个时间设置的原因主要是我们 APP 日启动次数不算太高,在 4-5 次左右)
开发,测试,上线,完美!

完整方案总结:

  • APP 每次启动时都从缓存中获取广告并展示,同时要对本地的缓存进行更新;
  • 展示缓存广告时,需判断广告是否在有效期内;
  • 针对 home 键切出切回问题,以及考虑用户体验的情况下,需对广告展示的时机和次数做限制。

小结

(1)APP 启动广告要有跳过的功能,给予用户一定的选择权利。
(2)常规看到 APP 启动时,其启动图片底部与广告底部一样,这种做法有两种:

  • 一是广告图片在设计时,其底部保持与启动图片底部一致(样式、大小尺寸);
  • 二是可以在 APP 启动广告上层添加一张只有底部而上部分透明的图片(这种也需要设计广告图片时底部不能设计有效内容)。

虽然我们采用的是第二种,但现在我更倾向于第一种,因为图片设计可以更多样;第二种限制了所有的图片都有固定的底部。
(3)现在的方案未能考虑到紧急下架的情况,当前方案下,即使广告紧急下架,如果缓存中存在,广告仍会展示(因为紧急下架未改广告有效期,在有效期内就会展示)。
漫漫产品路,需不断上下而探索!
 
作者 @ 桃花仙坞 。