写在前面
APP旧版用户在更新到新版本后,APP显示旧版的启动页。
旧版本是LaunchScreen.storyboard启动方式,新版本启动方式launchImage
解决办法
- 缓存的问题。用户卸载重新下载安装就好了。(如果用户一直在应用内更新的话,那就需要调整啦)
- 设置启动页方式为LaunchScreen.storyboard。因为LaunchScreen启动页优先级高于launchImage (LaunchScreen启动图片素材放在工程的根路径下,而不是放在Assets.xcassets中)
检查原因
-
不同版本启动页设置方式是否一致
要么LaunchScreen.storyboard实现,要么使用 Assets.xcassets - launchImage实现。如果两者混用的话,LaunchScreen.storyboard的优先级高二者混用需要注意的是LaunchScreen.storyboard设置的启动图的图片位置不要放在 Assets.xcassets中存放,需要放在工程目录位置。否则会启动页黑屏显示。
顺便提一下,Xcode 9 拖文件进项目的方式,会导致文件读取不到。文件包括 图片,第三方的库等。需使用 右键 - Add file to "项目"的方式添加文件。
使用Launch Screen.storyboard的过程中发现有黑屏的现象排查
-
查看启动屏图片的名字
尽量不要使用Launch这样的字眼,至于原因,可能跟系统有关。如有有了解的欢迎留言分享。 -
启动图片工程中位置
将图片放在工程的根路径下,而不是放在Assets.xcassets中 -
启动图的格式
建议使用png,尽量不要使用jpg -
查看工程中是否仍在使用LaunchImage
建议将工程中与LaunchImage有关的全部删掉,包括Assets.xcassets中。最好在检查下plist文件。 -
查看启动屏图片的尺寸
这个不太确定是否会影响到,可以尝试下 -
删除应用或者重启手机
网友评论