flutter 启动页 后短暂黑屏修复

2020-03-06  本文已影响0人  仔强小狐狸

flutter 版本:1.12.13+hotfix.8

一、黑屏原因

app 启动后进入 Android/ios 自定义的启动页,然后黑屏一下,才进入app;
这是因为 \color{red}{flutter 还没渲染出第一帧} 导致没有内容而导致的 黑屏

二、解决方法

1、Android

1.1 MainActivity 继承 FlutterActivity




SplashScreenProvider接口就是我们需要找的接口,一步步定位,最终能找到



String SPLASH_SCREEN_META_DATA_KEY = "io.flutter.embedding.android.SplashScreenDrawable";
所以只需要设置MainActivity meta-data,启动页 和 主题的windowBackground 设置同一个资源,就可以 无黑屏地过度了。

2、iOS

FlutterViewController.mm 源码中


可以知道,设置Info.plist 即可,而一般新建flutter项目,已经设置好了,只需修改LaunchScreen.storyboard 内容
上一篇下一篇

猜你喜欢

热点阅读