实测 性能优化之——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,就解决拉伸问题了。

 

有什么疑问可以私聊我!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值