android 优化(冷启动优化)

这里为了方便记录一下。

这类的blog很多很多,先看下鸿洋推的blog

面试官: 说一下你做过哪些性能优化?

这篇写的很好,大家可以跟着学习一下。

在把项目做的差不多的时候,看到启动的时候白屏,到这里就想到了优化一下,就是设置activity风格就好了,于是百度一下,

随便贴一个地址

Android Study 之冷启动优化(解决启动短暂白屏or黑屏)

设置风格:代码如下

在Style中设置透明

<style name="AppTransparentTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowBackground">@android:color/transparent</item>
</style>

在mainfest里面第一个启动的activity下设置主题风格,就好了。

然后开心的重新启动app,发现一个问题,怎么点击图片启动app的时候发现怎么过了1s甚至更长,才看到画面,虽然解决了白屏的问题,但是更用户的体验就是是不是app卡了,点击没反应,于是乎又百度了一下优化启动,一个博主说在application里面的oncreate初始化一些数据,比如百度sdk等,这些会导致app启动变慢,他 的处理方式是,在application里面的oncreate方法里面不做初始化,利用evenbus处理,在启动页的时候,发送注册,进行了初始化,有兴趣的可以了解一下,这里贴上博客:

App 冷启动与热启动及启动白屏优化

我写加入进去,但是呢还是存在问题,只有重新考虑了,重新百度了一下,点击图标启动的时候为什么会变慢的原因,给了很多的答案,但大多的答案是,优化之后设置了

<item name="android:windowIsTranslucent">true</item>

这个属性导致,距离原因不是很清楚,都再说这个慎用,会拖慢启动速度,于是去掉了这个方法,发现没有延迟几秒了,问题解决了,缓了一下,怎么出现一个透明的黑色背景很不美观,这里需要把

<item name="android:windowBackground">@android:color/white</item>

这里设置的背景替换成你需要的背景图片就好了。

修改之前的:

style name="StartTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBar">false</item>
    <item name="android:windowBackground">@android:color/white</item>
</style>

修改之后的:

<style name="StartTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowBackground">@drawable/background3</item>
    <item name="android:windowFullscreen">true</item>
</style>

 

附属地址

android点击app图标没有反应过几秒才弹出app界面

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章