Flutter应用启动页设置,解决 白/黑 屏情况

解决启动白屏或黑屏

出现此情况的原因有两种

  1. FlutterView显示第一帧之前,安卓会加载flutter的SDK,将dart代码加载在内存中,过程中android没有可以显示的东西,出现白屏。(android 方面原因)


    初始化过程.png

解决:
找到 \app\src\main\res\drawable\launch_background.xml 文件,这个里面初始化了布局标签,只需要把图片替换为我们自己的就可以。




    

    
    


     
         
     

或者根据不同手机的分辨率 在mipmap下放置图片例如:


转载.png

之后前往 styles.xml 文件设置启动页



    

重新打包就可以看到 刚刚设置的启动页了
效果例如:
[图片上传失败...(image-7e5c2-1586668143446)]

  1. 从现象观察,启动页中间有一段时间黑屏,这个为什么呢?前面我们说过,Flutter的启动流程分成两部分,一部分是Android启动阶段,一个是Flutter的启动阶段,这个黑屏就是Flutter的启动阶段没有启动页所造成的。我们从源码入手,详细分析一下,下面是FlutterActivityDelegate的部分源码。参考链接
    解决:找到 \app\src\main\AndroidManifest.xml 文件

    
    
        
    // 添加这两段代码 可解决 黑屏问题(出现红线 或者 异常没关系,可以编译成功)
          + 
       // 将资源指向我们的启动页路径
          +  

            
                
                
            

        
        
        
    


至此可以流畅的打开启动页了

你可能感兴趣的:(Flutter应用启动页设置,解决 白/黑 屏情况)