Androidj进入app白屏解决方法

1、问题描述

主要是在加载webView时Html5加载过慢导致有白屏,并且加载时间过长。这样给用户的体验是十分不好的。

2、问题出现的原因:

当我们在启动一个应用时,系统会检查是否已经存在这样一个进程,如果没有,Android系统会创建出一个新的进程分配给该应用,之后会依次创建和初始化Application类、然后启动SplashActivity类的。而显示白黑屏的问题就是在这段时间内产生的。

系统会在绘制页面加载布局之前 ,首先会初始化窗口(Window),而在进行这步操作时,系统会根据我们设置的Theme来指定它的Theme主题颜色。Window布局的顶层是DecorView,StartingWindow显示一个空的DecorView,进而我们在Style中的设置就决定了显示的是白屏还是黑屏。所以,在theme设置windowBackground就可以解决启动时白屏黑屏一会儿了,下面是我的解决方案:

一、提供.png背景图

       可以在进入app时提供一个背景图片,这样会在显示时显示我们的背景图片而不是黑白屏。这个要解决适配各种屏幕、以及需要设置样式为透明背景。

二、为启动页单独设置一个Theme主题

       我首先是把所有的耗时操作都放在异步执行,主线程只加载布局。这样下来会大大加快应用的启动速度,减少白屏时间。然后我采用了设置背景图片的方法解决白屏。这样我的应用在进入app是不会再有白屏,并且打开速度也很快。

2019-01-09 更新

 昨天领导给出新思路,把轮播图和欢迎页以及webview同时写在一个activity上。这样会大大缩短白屏时间。并且可以使webview提前异步加载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值