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

来源:互联网 发布:电脑定时关机软件 编辑:程序博客网 时间:2024/04/26 05:43

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

App启动的方式:

这里写图片描述

冷启动:指后台没有改应用的进程,重新创建进程,过程为,实例化Application,然后实例化入口Activity,最后显示Activity.

热启动:后台中存在当前的进程,直接从进程中启动,不用重新创建Application,只需要实例化入口Activity即可

优化App启动过程的三个建议:

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

最有效的还是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开发的QQ群,欢迎加入.

群号:375276053

0 2