如何解决FlutterAndroid端启动白屏的问题

这篇文章主要为大家展示了“如何解决Flutter Android端启动白屏的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决Flutter Android端启动白屏的问题”这篇文章吧。

创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、成都做网站、嵊州网络推广、重庆小程序开发、嵊州网络营销、嵊州企业策划、嵊州品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供嵊州建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

问题描述

Flutter 应用在 Android 端上启动时会有一段很明显的白屏现象,白屏的时长由设备的性能决定,设备性能越差,白屏时间越长。

问题分析

其实启动白屏的问题在Android原生应用上也是一个常见问题,大致是因为从用户点击 Launcher Icon 到应用首页显示之间,Android 系统在完成应用的初始化工作,其流程如下:

如何解决Flutter Android端启动白屏的问题

在 Flutter Android 端上,白屏的问题会更加严重,因为除了 Android 应用启动耗时外,还增加了 Flutter 初始化耗时。

如何解决Flutter Android端启动白屏的问题

直到 Flutter 渲染出第一帧内容,用户才能感知到App启动完成。

解决方案

解决方案很简单,Android原生的白屏问题可以通过为 Launcher Activity 设置 windowBackground 解决,而 Flutter 也是基于此办法,同时优化了 Flutter 初始化阶段的白屏问题(覆盖一个launchView),只用两步设置便能解决 Flutter 中白屏问题。

在项目的 android/app/src/main/res/mipmap-xhdpi/ 目录下添加闪屏图片;

打开 android/app/src/main/res/drawable/launch_background.xml 文件,这个文件就是闪屏的背景文件,具体如何设置可以查阅 Android Drawable,我在 demo 中的设置如下:




  

  
  
    
  

效果对比如下:

如何解决Flutter Android端启动白屏的问题

白屏

如何解决Flutter Android端启动白屏的问题

以上是“如何解决Flutter Android端启动白屏的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


本文名称:如何解决FlutterAndroid端启动白屏的问题
URL地址:http://myzitong.com/article/jdegje.html