美文网首页Android Tips
Android冷启动时间优化

Android冷启动时间优化

作者: 离岛LOGAN | 来源:发表于2016-03-22 14:24 被阅读256次

冷启动时间是指当用户点击你的app那一刻到系统调用Activity.onCreate()之间的时间段。在这个时间段内,WindowManager会先加载app主题样式中的windowBackground做为app的预览元素,然后再真正去加载activity的layout布局,而通常情况下这个默认背景是黑色或者白色所以如果不加以优化会让用户感觉到app很卡很慢。

知道了Android冷启动时间的原理之后,就可以通过一些小技巧来对冷启动时间进行优化,从而让你app加载变得”快“一些(视觉体验上的快)。我是通过使用app闪屏页的图片来做为windowBackground这样可以传达企业的形象。

1、为启动的Activity自定义一个Theme

<style name="AppTheme.Launcher">
    <item name="android:windowBackground">@drawable/window_background</item>
</style>

2、将新的Theme应用到设置到 AndroidManifest.xml 中

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

3、由于给MainActivity设置了一个新的Theme,这样做会覆盖原来的Theme,所以在MainActivity中需要设置回原来的Theme

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
  // Make sure this line comes before calling super.onCreate().
  setTheme(R.style.AppTheme);
  super.onCreate(savedInstanceState);
    }
}

最后推荐大家一个开源项目也是用来实现冷启动优化的不过是MaterialDesign风格的:https://github.com/DreaminginCodeZH/MaterialColdStart


FullStackEngineer的公众号,更多分享

相关文章

  • app性能优化

    Android冷启动时间优化 Android开发——避免内存泄露 APK瘦身实践 APK瘦身记,如何实现高达53%...

  • Android冷启动时间优化

    冷启动时间是指当用户点击你的app那一刻到系统调用Activity.onCreate()之间的时间段。在这个时间段...

  • Android冷启动 - 启动优化

    Android冷启动 - 启动优化 介绍: 方法 在 drawable 下新建 launch_screen.xml...

  • 启动优化的原理以及操作

    首先我们要知道,启动是分为冷启动和热启动的。启动优化主要就是优化冷启动的时间。冷启动又可以分为两个部分:pre_m...

  • android 冷启动优化

    文中描述的冷启动时间为:点击应用图标 到 app主界面展示到用户面前,这个时间段。 在程序初始化阶段,我们一般会...

  • Android冷启动优化

    一 什么是冷启动 只要APP的状态是未打开状态(包括不在后台),此时点击桌面图标启动应用的过程就是冷启动。 二 ...

  • Android冷启动优化

    1.冷启动时间检测 通过adb检测 运行结果分析 TotalTime:应用的启动时间,包括创建进程+Applica...

  • 如何实现 iOS App 的冷启动优化

    如何实现 iOS App 的冷启动优化如何实现 iOS App 的冷启动优化

  • 如何实现 iOS App 的冷启动优化

    如何实现 iOS App 的冷启动优化如何实现 iOS App 的冷启动优化

  • iOS学习-性能优化-启动优化

    一、冷启动 1、是什么? 从零开始启动APP,优化主要是优化冷启动 2、分析启动时间 1、通过添加环境变量可以打印...

网友评论

  • 9fde97c5f8c8:这个根本没有真正优化启动时间吧,只是视觉上的而已

本文标题:Android冷启动时间优化

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