大无语事件,uni-app的启动页闪白屏问题

4,532 阅读2分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

    今日公司的租房项目【优区生活】即将上线,但是一个大无语的问题一直找不到原因,即离线打包的app在启动时会出现启动页即将结束,但并未开始渲染时突然出现白屏的情况,而且并且是加载内容引起的白屏问题,这对于一个单纯的web前端来讲差点没给我整崩溃了。

    按照官网文档延迟关闭启动屏也解决不了,通过H5+的api检测可以确认白屏时启动屏仍然存在,WTF,这就麻爪了,如果是因为打包的时候,Android那边的配置问题我可就完全外行了啊。

    没办法,项目即将上线根本没时间让我去从零开始搞定Android,所以我就当起了社区的游魂,在万千帖子中试图找到解决的方法。

    这时,有一篇相似内容的帖子频繁的出现,是关于在manifest.json文件中把关于app启动页的设置项中,关于在渲染前自动关闭的配置项alwaysShowBeforeRender关闭的做法。

    说实话,在之前的测试中我试过去配置它,但是一直没什么效果,直到今天,这篇来自不懂网站但内容相同的帖子频繁出现,让我起了尝试的想法。

    没想到这一试,嘿,真有效果,但是因为取消了自动关闭启动页的设置,所以需要在代码中配置手动关闭。

// APP.vue
onLaunch(){
  // H5+app 手动关闭启动页的接口
  plus.naigator.closeSplasnScreen();
}

之后再次启动APP,启动页的加载时间不变,但是可以看到不在出现之前的白屏的情况了。