Demon_xiaochunjie的博客

每一篇文章到发表,都是一次学习与进步。

Android启动优化,去除白屏或者黑屏

Android启动优化,去除白屏或者黑屏
App启动的方式:

这里写图片描述
冷启动:指后台没有改应用的进程,重新创建进程,过程为,实例化Application,然后实例化入口Activity,最后显示Activity.
热启动:后台中存在当前的进程,直接从进程中启动,不用重新创建Application,只需要实例化入口Activity即可
优化App启动过程的三个建议:

Application的创建过程中尽量少的进行耗时操作
如果用到SharePreference,尽量在异步线程中操作
减少布局的层次,并且生命周期回调的方法中尽量减少耗时的操作

最有效的还是Manifest文件中给指定的入口Activity设置一个背景,当进入之后恢复默认背景,这样在显示界面之前都会显示那么被设置的背景,这样就提高了用户体验,至少等待主界面的过程中不是黑屏或者白屏.

主题的设置

<style name="LauncherTheme">
<item name="android:windowBackground">@drawable/bg_login</item>
</style>

给Activity设置主题

<activity
            android:name=".activity.LauncherActivity"
            android:theme="@style/LauncherTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

</activity>

应用启动完成后恢复默认主题

protected void onCreate(Bundle savedInstanceState) {
        setTheme(R.style.AppTheme_NoActionBar);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_launcher);
       ...
    }

效果图:
这里写图片描述

阅读更多
个人分类: 【Android编程】
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

Android启动优化,去除白屏或者黑屏

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭