实测 性能优化之——App启动优化
当你看到爱奇艺,支付宝等大厂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启动优化相关推荐
- App性能优化(布局优化,线程优化,app瘦身优化,页面切换优化,App启动优化,内存优化)
Android APP性能优化(最新总结) 在目前Android开发中,UI布局可以说是每个App使用频率很高的,随着UI越来越多,布局的重复性.复杂度也随之增长,这样使得UI布局的优化,显得至关重要 ...
- Android性能优化(一):APP启动优化
Android性能优化(一):APP启动优化 性能优化系列文章: Android性能优化(一):APP启动优化 Android性能优化(二):UI布局优化 Android性能优化(三):响应优化 An ...
- 【Android 性能优化】应用启动优化 ( 启动优化项目 | 界面启动时间 | 启动优化项目 | 方法追踪 MethodTracing )
文章目录 一. 界面启动时间 二. 启动优化项目 三. 方法追踪 一. 界面启动时间 在 [Android 性能优化]应用启动优化 ( 启动白屏问题 | 应用启动时间测量 | 冷启动 | 热启动 | ...
- App启动优化-一顿操作猛如虎
前言 ++一个应用App的启动速度能够影响用户的首次体验,用户希望应用能够及时响应并快速加载.启动时间过长的应用不能满足这个期望,并且可能会令用户失望.这种糟糕的体验可能会导致用户在应用商店针对您的应 ...
- [纸上谈兵 1]——App启动优化
0 纸上谈兵--App启动优化 纸上谈兵系列是我在学习App性能优化的笔记,纸上谈兵这个名字就很好的反应了这次只是启动优化的学习,并没有真正用到实际App的开发过程中(以后专门的同时处理),闲话少说, ...
- 你想要的Android性能优化系列:启动优化 !
文章目录 一.概述 二.应用启动流程介绍 三.优化核心思想 四.时间检测 4.1 Displayed 4.2 adb shell 4.3 reportFullyDrawn() 4.4 代码打点 4.5 ...
- Android App启动优化
一:启动优化 1. 启动状态 应用有三种启动状态,冷启动.温启动与热启动:每种启动状态都会影响该应用向用户显示所需的时间. 在冷启动中,应用从头开始启动. 在另外两种状态中,系统需要将后台运行的应用带 ...
- 【Android 性能优化】应用启动优化 ( 阶段总结 | Trace 文件分析及解决方案 | 源码分析梳理 | 设置主题的方案总结 ) ★
文章目录 一. 常用的耗时方法优化方案 ( 重要 ) 二. 源码分析梳理 1. 应用启动时间计算相关源码分析 2. Launcher 应用中启动 Android 应用流程 三. 启动白屏解决方案 An ...
- 【Android 性能优化】应用启动优化 ( 安卓应用启动分析 | Launcher 应用启用普通安卓应用 | 应用进程分析 )
文章目录 一. Launcher 应用 startActivitySafely 方法分析 二. Launcher 中的 startActivity(View v, Intent intent, Obj ...
最新文章
- 9月Python开源项目Top10
- 【⚠️阴沟里翻船,这题都做错了!⚠️】C语言宏定义
- PHP stripos strpos,strpos()和stripos()函数的区别
- Android 第一个OpenGL ES程序
- Hybris里类似ABAP Netweaver的DDIC - 如何做data type的extension
- uva 1612——Guess
- python cryptography key加密_python3利用cryptography 进行加密和解密
- htpasswd用法
- 计算机械效率的公式四种,功功率机械效率复习题超全
- iphone开发常用编码
- 神经网络预测python_bp神经网络预测python
- 《地理信息系统概论》课后习题全部答案_黄杏元
- 软件测试笔记2-目的
- 工业相机镜头 参数概念
- win7无损合并分区,win7合并磁盘分区
- 上传本地仓库到github远程仓库
- html手机输入框键盘弹起顶起背景图
- 硬盘插上后计算机无法识别,移动硬盘插入Mac后,在Windows无法识别
- 企业微信H5页面title返回上一页不更新解决
- HPB:HPB开发节点搭建指南
热门文章
- 用户交互界面---python-PySimpleGUI库
- Intellij IDEA字体大小快捷键设置
- 人工智能对联生成 API 数据接口
- 如何修改Apple Developer ID的密码?
- java 运动会分数统计_数据结构题目-运动会分数统计
- onBlur事件与onfocus事件 (js)
- Linux环境下(Ubuntu16.04)用Xmodmap实现Capslock+软件的上下左右功能
- 2022年最新JDK17下载并安装(超详细)
- NR 通信中的相干时间Tc和相干带宽Wc
- 2019年CSDN排名人气最高博客排名榜(前20强),业界传说,膜拜!学习!!!