关于启动图2 (一开始使用LaunchScreen 后采用LaunchImage不起作用)

坑一

先说下为什么写这篇文章,最近新版本上线,改了启动图,上线前没有在意,等上线通过从AppStore更新新版本时,我都快哭了:
我们之前的启动图是空白图片,紧接着加载我自定义的启动动画,现在改了启动图片,去掉了启动动画。
我之前所有的版本加载启动图用的都是xib,最新这个版本改成了launchImage。然后从AppStore更新新版本时,启动图还是原来的图片,由于之前是纯白色图片,你想想,“启动-空白-主页”,这是多么丑的一种体验,我试了几个手机都是这样,只有卸载掉APP,重新下载才会加载出新的启动图。老板说不会所有用户都是这样吧,我说,也许、大概、可能吧!让我默默的尴尬一会...
这个时候你们可能会说,设置启动图这是基础技术啊,加载不出来是你哪里没设置对吧?这怎么可能,如果设置不对的话,它永远都不会加载出来的,是吧?请看我的设置截图:

设置启动方式为LaunchImage

以防万一,这里也去掉了

注:如果你不会设置启动图,按照我的截图设置就行了。
1.launchImage方式,在Images.xcassets中新建一个LaunchImage,具体image的尺寸,自己网上搜索一下,然后工程中按照我的截图方式设置。
2.LaunchScreen方式加载启动图,图二对勾选中,注意约束的添加,图一的截图改为:

LaunchScreen

既然设置没问题,那是为什么呢,Google了半天,发现大家是这样说的:

  • I test it ,it seems the only way to update your launchImage is unistall the app ,and install again.
    I think this is apple's bug , Apple cache the snapshots,but don't update it when we change the setting.
  • 如果某个版本使用了 LaunchScreen.storyboard 方式来设置启动图后,后续的升级版本不可再更改为 LaunchImage 的方式,如果有更改,则启动图依然会使用之前 LaunchScreen.storyboard 里的内容。
  • 我也遇到这问题了,这是系统bug。
  • 等等。

意思就是说:这是系统bug,如果你之前的版本是用 LaunchScreen设置的启动图,而你的新版本改成了LaunchImage,那么它加载的还是之前的图片。你们说这是不是坑人,吓的我赶紧改回LaunchScreen,加急了一个版本。
也许这不是系统bug,只是我还找到解决方案,我也不敢太确定,如果谁遇到类似问题,还是继续使用你的LaunchScreen吧。
另外,如果哪位大神知道方法,麻烦指导一下。

在查找上面原因的时候,发现大家遇到的有另外的坑,经验证确实是这样,这里也一一列举一下

坑二.

当单独使用LaunchImage设置启动图的时候,如果是iOS8以后的系统,在 APP 从后台通过 openURL 拉起到前台时,不会出现启动图;

坑三.

当单独使用LaunchScreen设置启动图的时候:

  • iOS8 系统会导致 APP 在从后台被拉起到前台时,先出现黑屏再出现启动画面的情况
  • iOS8以后系统,如果更换过启动图, APP 在后台被拉起到前台时出现的启动图不会更新
  • 当然iOS8之前的系统不能通过该方式加载启动图

链接:https://www.jianshu.com/p/2ce9e1346254
 

猜你喜欢

转载自blog.csdn.net/allanGold/article/details/83214787