当你看到爱奇艺,支付宝等大厂APP点击图标秒开的时候,感觉产品体验非常棒,纵享丝滑,回头再看看自己的APP,先白屏晾你一会,顿时是不是感觉心里不爽了:为啥别人的产品那么效果那么好呢(千万不要找借口说人家是大厂 技术很牛逼,的确有部分原因 但是这就是你不做启动优化的理由?) 性能优化对于我们开发来说尤为重要,毕竟一个好的产品和所带来的收益是相辅相成的,同时这也是咱们技术所追求的,毕竟干一行爱一行嘛!

上效果图:

android启动分为冷启动和热启动,

  • 冷启动:
    在启动应用时,系统中没有该应用的进程,这时系统会创建一个新的进程分配给该应用;

  • 热启动:
    在启动应用时,系统中已有该应用的进程(例:按back键、home键,应用虽然会退出,但是该应用的进程还是保留在后台);

启动优化有很多种 我也就不一一列举了,这里我只讲我项目中用到的优化方案:替换window背景

首先:在AndroidManifest的 application中设置他的theme

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"><item name="colorPrimary">@color/white</item><item name="colorPrimaryDark">@color/white</item><item name="colorAccent">@color/colorAccent</item><item name="android:textAllCaps">false</item><item name="android:textCursorDrawable">@null</item><item name="android:windowDisablePreview">false</item><item name="android:windowBackground">@drawable/launcher</item><item name="android:navigationBarColor" tools:ignore="NewApi">@android:color/transparent</item><item name="android:statusBarColor" tools:ignore="NewApi">@android:color/transparent</item><item name="android:windowNoDisplay">false</item>
</style>

这个@drawable/launche 是我写的一个xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"><item><bitmap android:src="@drawable/window_bg" /></item>
</layer-list>

这个window_bg 就是你设置你的启动页背景,这样APP就不会出现闪白屏问题了,但是问题来了,如果放一张图片的话,图片铺满肯定会变形,而在这个xml里是没有scaleType属性的,所以不能说android所有分辨率都各切一张图吧,当然这就不用了(但是你想的话其实也可以试试,反正我不会那样做),比如:soul,Twitter等都是背景纯色然后这个xml里放一个图标就解决了,还有一种方案就是这张启动图直接用.9,就解决拉伸问题了。

有什么疑问可以私聊我!

实测 性能优化之——App启动优化相关推荐

  1. App性能优化(布局优化,线程优化,app瘦身优化,页面切换优化,App启动优化,内存优化)

    Android APP性能优化(最新总结) 在目前Android开发中,UI布局可以说是每个App使用频率很高的,随着UI越来越多,布局的重复性.复杂度也随之增长,这样使得UI布局的优化,显得至关重要 ...

  2. Android性能优化(一):APP启动优化

    Android性能优化(一):APP启动优化 性能优化系列文章: Android性能优化(一):APP启动优化 Android性能优化(二):UI布局优化 Android性能优化(三):响应优化 An ...

  3. 【Android 性能优化】应用启动优化 ( 启动优化项目 | 界面启动时间 | 启动优化项目 | 方法追踪 MethodTracing )

    文章目录 一. 界面启动时间 二. 启动优化项目 三. 方法追踪 一. 界面启动时间 在 [Android 性能优化]应用启动优化 ( 启动白屏问题 | 应用启动时间测量 | 冷启动 | 热启动 | ...

  4. App启动优化-一顿操作猛如虎

    前言 ++一个应用App的启动速度能够影响用户的首次体验,用户希望应用能够及时响应并快速加载.启动时间过长的应用不能满足这个期望,并且可能会令用户失望.这种糟糕的体验可能会导致用户在应用商店针对您的应 ...

  5. [纸上谈兵 1]——App启动优化

    0 纸上谈兵--App启动优化 纸上谈兵系列是我在学习App性能优化的笔记,纸上谈兵这个名字就很好的反应了这次只是启动优化的学习,并没有真正用到实际App的开发过程中(以后专门的同时处理),闲话少说, ...

  6. 你想要的Android性能优化系列:启动优化 !

    文章目录 一.概述 二.应用启动流程介绍 三.优化核心思想 四.时间检测 4.1 Displayed 4.2 adb shell 4.3 reportFullyDrawn() 4.4 代码打点 4.5 ...

  7. Android App启动优化

    一:启动优化 1. 启动状态 应用有三种启动状态,冷启动.温启动与热启动:每种启动状态都会影响该应用向用户显示所需的时间. 在冷启动中,应用从头开始启动. 在另外两种状态中,系统需要将后台运行的应用带 ...

  8. 【Android 性能优化】应用启动优化 ( 阶段总结 | Trace 文件分析及解决方案 | 源码分析梳理 | 设置主题的方案总结 ) ★

    文章目录 一. 常用的耗时方法优化方案 ( 重要 ) 二. 源码分析梳理 1. 应用启动时间计算相关源码分析 2. Launcher 应用中启动 Android 应用流程 三. 启动白屏解决方案 An ...

  9. 【Android 性能优化】应用启动优化 ( 安卓应用启动分析 | Launcher 应用启用普通安卓应用 | 应用进程分析 )

    文章目录 一. Launcher 应用 startActivitySafely 方法分析 二. Launcher 中的 startActivity(View v, Intent intent, Obj ...

最新文章

  1. 9月Python开源项目Top10
  2. 【⚠️阴沟里翻船,这题都做错了!⚠️】C语言宏定义
  3. PHP stripos strpos,strpos()和stripos()函数的区别
  4. Android 第一个OpenGL ES程序
  5. Hybris里类似ABAP Netweaver的DDIC - 如何做data type的extension
  6. uva 1612——Guess
  7. python cryptography key加密_python3利用cryptography 进行加密和解密
  8. htpasswd用法
  9. 计算机械效率的公式四种,功功率机械效率复习题超全
  10. iphone开发常用编码
  11. 神经网络预测python_bp神经网络预测python
  12. 《地理信息系统概论》课后习题全部答案_黄杏元
  13. 软件测试笔记2-目的
  14. 工业相机镜头 参数概念
  15. win7无损合并分区,win7合并磁盘分区
  16. 上传本地仓库到github远程仓库
  17. html手机输入框键盘弹起顶起背景图
  18. 硬盘插上后计算机无法识别,移动硬盘插入Mac后,在Windows无法识别
  19. 企业微信H5页面title返回上一页不更新解决
  20. HPB:HPB开发节点搭建指南

热门文章

  1. 用户交互界面---python-PySimpleGUI库
  2. Intellij IDEA字体大小快捷键设置
  3. 人工智能对联生成 API 数据接口
  4. 如何修改Apple Developer ID的密码?
  5. java 运动会分数统计_数据结构题目-运动会分数统计
  6. onBlur事件与onfocus事件 (js)
  7. Linux环境下(Ubuntu16.04)用Xmodmap实现Capslock+软件的上下左右功能
  8. 2022年最新JDK17下载并安装(超详细)
  9. NR 通信中的相干时间Tc和相干带宽Wc
  10. 2019年CSDN排名人气最高博客排名榜(前20强),业界传说,膜拜!学习!!!