App启动速度优化

来源:互联网 发布:三维立体制作软件 编辑:程序博客网 时间:2024/05/16 12:56

App启动屏幕

当一个app第一次启动的时候,点击桌面图标,会出现一个白屏,然后进入主界面。

为什么会出现一个白屏呢?

因为从桌面点击图标,应用开始启动,程序会显示一个启动窗口等待Activity的创建和加载,这个白屏就是启动窗口。

为什么出现白屏

  • Application的onCreate流程,很多app,通常会在Application的onCreate做大量的初始化操作
  • Activity的onCreate流程,特别是UI的布局与渲染操作,如果布局过于复杂很可能导致严重的启动性能问题

优化方案

关闭启动窗口

定义一个style:

 <style name="AppTheme.Launcher" parent="Theme.AppCompat.Light.NoActionBar">        <!--关闭启动窗口-->        <item name="android:windowDisablePreview">true</item>    </style>

在启动页面引用:

<activity    android:name=".MainActivity"    android:label="@string/app_name"    android:theme="@style/AppTheme.Launcher">    <intent-filter>        <action android:name="android.intent.action.MAIN"/>        <category android:name="android.intent.category.LAUNCHER"/>    </intent-filter></activity>

在MainActivity的onCreate方法中恢复正常主题:

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

优化前:

这里写图片描述

优化后:

这里写图片描述

0 0
原创粉丝点击