App 打开先黑两秒?先别改代码,倒着查一遍启动图

App 打开先黑两秒?先别改代码,倒着查一遍启动图

早上九点多,测试的同事在群里丢来一张截图:一整块黑,只有顶上一条状态栏,后面跟着三个字,「是不是崩了」。

我把录屏看了两遍。没崩。两秒之后应用自己进了首页,数据也都在。就是开头这一小段,屏幕上什么都没有。

这事挺磨人的。你把代码从头翻到尾,删两行又加回去,IDE 里一个红点都不给你——因为问题不在代码里。开头这一小段叫启动画面,iOS 上它由一份 storyboard 文件描述,跟你写的业务逻辑、跟首页长什么样,基本不挨着。它没生效,代码是不会报错的。

那天我们没再瞎改,改成倒着走:从用户看见的结果,一步一步往回查。

先给现象分个类,别急着动手

同一种「打开不好看」,其实至少是三种毛病。

一种是纯黑,或者纯白,几秒之后突然跳出首页。这多半是启动图没生效,系统拿不到你的图,先用默认底色顶着。

一种是图在,但被拉长了,或者裁掉了一块。人像变瘦,圆角被切平,本来在正中间的图标跑到边上去了。

还有一种是图其实没问题,只是一闪而过,配色和首页完全不是一路,眼睛会觉得晃了一下。

(这几类是常见情形归类,不是某位真实客户的反馈。我们那次遇到的是第一种。)

先分清是哪种,比自己瞎猜省时间。截图看不出来的东西,录屏往往能看出来——录屏比截图多出来的那几秒,正好是最要紧的几秒。

往回走一步:手里这张图,规格对不对

启动图是张竖长条的图。iPhone X 之后屏幕越来越长,图也得更窄更长。你要是随手拿一张老的手机截图,或者从海报上裁一块下来,比例天生对不上,系统只能拉,或者切。

官网的 UniApp 启动图生成器页面写得很明确:PNG 格式,1125 × 2436 像素,不超过 1MB。前两条决定图会不会变形,最后一条决定它能不能传上去。

我吃过一次亏。做活动页剩下的一张方图,我想裁成竖的差不多就行,结果打包出来,图标被顶掉一半。发现它的时间点很狼狈——提交前的最后一眼。那次之后我就学乖了:先把图按目标尺寸出好,再谈后面的事。

再往回走:项目里,它到底有没有被用上

图对了还是不显示,问题常常出在「换没换」这三个字上。

uniapp 打包的时候,启动图是在模板工程里配的。有人改了 manifest,忘了重新打包;有人新加了一份图,旧的没删,打包时走的还是旧的;也有人在模拟器里看着一切正常,装到真机上还是黑。

这一段最常出现的错觉,是「我明明改了啊」。

判断的办法很土,但有用:把已经装好的应用卸掉,重新装一次,冷启动看。启动图这类资源,覆盖安装经常不刷新,删干净重装,才是看到真相的那一下。

还要看一眼:图本身有没有小毛病

比例对了,也换上了,看着还是别扭,就该看图片自己了。

比如边缘画了很浅的颜色,刘海一挡就没了;比如用了透明底,某些设备上会渲染出一条灰边;比如图里塞了一行小字,缩到手机上根本读不出来,远看就是一个脏点。启动图只活两秒,这个位置上,简单比花哨安全。

要重做图的时候,这一步交给工具就行

如果你手上只有一张 PNG,要把它变成项目能直接用的 storyboard 文件,官网那个生成器就是干这个的:免费使用,上传后在线生成,处理完把文件删掉,页面写的是「文件仅用于转换,并在处理流程完成后删除」。

用起来没什么门槛。把图按 1125 × 2436 准备好,PNG 格式,1MB 以内,传上去,拿到生成的 storyboard 文件,替换进项目,再冷启动验一遍。整条流程里真正需要动脑子的,其实就是把图做好这一步。

我习惯在两台尺寸不一样的机器上都看一遍,一台小屏,一台长屏。启动图这种事,在一台机器上好看,不代表在另一台上也好看。

哪些人可以先备着

自己写 uniapp、又不想为一张启动图去啃 Xcode 模板的独立开发者,这类工具是刚需。

接外包的团队也合适。交付前要换客户的 logo、换主色,启动图往往排在最后一刻,手里又没有设计,这时候有一张图就能出文件,能省掉很多来回。

还有一种是产品改版。主色换了,首页重做了,启动图还停在三年前,用户打开的第一眼就在提醒他这应用很久没更新了。

最后说两句

工具能帮你做的,是把一张图变成项目认得的文件。图好不好看、跟产品气质搭不搭,还是得自己判断。至于审核能不能过、能不能顺利上架,那是平台说了算的事,谁也没法替你打包票。

要是你现在的状态是「图已经画好了,就差一个 storyboard 文件」,去官网的 storyboard 生成页面走一遍就好,几分钟的事。启动图之外,开发者账号、证书、预审这些也要一起理顺的话,初雪云的上架与预审服务可以接着聊——把材料和时间节点一次对齐,比临到提交前一项一项去补要轻松。

本文提到的页面功能以初雪云官网当前展示为准,具体规格与处理方式以页面说明为准,实际渲染效果因设备与系统版本而异。