美文网首页程序员
Android冷启动白屏解决方案

Android冷启动白屏解决方案

作者: 不灬语 | 来源:发表于2017-06-27 11:07 被阅读580次

1.什么是冷启动

冷启动其实就是应用第一次启动,或者说启动之后后台被杀掉了又重新启动app的情况.比如小米通过菜单键杀掉应用后台,重新启动app.

应用冷启动的时候其实会在Application做一些初始化工作,大部分第三方都是在Application初始化的.初始化完才会启动SplashActivity做初始化工作,然后才是进入MainActivity.这其中看起来很简单,其实可以对app的体验优化做很多文章...

2.冷启动为什么会有一段白屏

  1. 系统本身加载带来的耗时

  2. Application初始化工作.其实上面已经说了,当应用冷启动的时候Application先做初始化工作,导致了SplashActivity无法及时初始化,也就没东西显示出来.

  3. SplashActivity的OnCreate中存在耗时操作,或者布局过于复杂导致布局解析耗时过久.

3.解决办法

  1. 优化Application中的逻辑.使用异步加快进入SplashActivity,用事务总线(Eventbus,otto)延迟加载.

  2. 使用异步处理SplashActivity的OnCreate中的逻辑

  3. 但是这种处理其实还是会有一小段白屏或者黑屏,这是系统本身初始化工作导致的,无法避免...那么为什么QQ,微信不会呢?

这时候我们只需要给启动页添加一个主题Theme

<style name="StartAppTheme" parent="Theme.AppCompat.NoActionBar">
        <item name="android:windowFullscreen">true</item>    //设置满屏,没有状态栏,不需要可去掉
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowBackground">@drawable/ic_welcome</item>  //设置欢迎页图片
        <item name="android:windowContentOverlay">@null</item>
</style>
 <activity
            android:name=".activity.WelcomeActivity"
            android:theme="@style/StartAppTheme"          //就是上面那个主题
            >

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

相关文章

  • Android冷启动白屏黑屏处理

    一、冷启动会有黑白屏现原因Android冷启动黑白屏现象其实是因为activity的window背景颜色二、解决办...

  • Android冷启动白屏解决方案

    什么是Android应用冷启动? 当启动应用时,后台没有该应用的进程,这时系统会新创建一个新的进程分配给该应用,并...

  • Android冷启动白屏解决方案

    1.什么是冷启动 冷启动其实就是应用第一次启动,或者说启动之后后台被杀掉了又重新启动app的情况.比如小米通过菜单...

  • Android开发知识点总结

    Android启动 一、Android应用启动方式:(1)冷启动 (2)热启动 (3)温启动 二、产生白屏的原因...

  • React Native 启动白屏问题解决方案,教程

    目录 问题描述 问题分析 Android启动白屏解决方案 iOS启动白屏解决方案 开源库 最后 项目源码:reac...

  • Android启动白屏解决方案

    Android启动白屏解决方案 原文链接:Easy Android: Launch screen style文件配...

  • Android SplashsCreen启动页优化库 让App启

    由于Android启动的冷启动白屏问题 ,Google终于看不下去了.从 Android 12 开始,在所有应用的...

  • Android冷启动白屏问题

    1. 冷启动与热启动 通常我们在使用某个应用程序时,都是点击桌面应用图标来启动该程序。你肯定或多或少的碰到过这种情...

  • android冷启动白屏问题

    今天把玩公司App发现了一个有趣的现象。启动app白屏。之前没太留意过;在参照大厂App解决白屏的方案后。简单汇总...

  • android 冷启动白屏黑屏

    前言: 当我们开发APP时如果不对其做任何处理,启动则会根据主题显示白色或者黑色,而这种情况对于用户来说体验性则不...

网友评论

    本文标题:Android冷启动白屏解决方案

    本文链接:https://www.haomeiwen.com/subject/ikoscxtx.html