美文网首页安卓Android问题集Android
APP启动时间,性能优化,启动页白屏

APP启动时间,性能优化,启动页白屏

作者: Small_Cake | 来源:发表于2019-08-10 15:59 被阅读0次

    测试一个应用的首页启动时间:

    adb shell am start -W -n 包名/包名.activity.MainActivity
    
    冷启动
    热启动 超热启动
    超超超级热启动
    Jake Wharton大神的hugo可以帮助我们知道那个方法最耗时。

    参考:

    • Android App启动优化深度实践 (由2.4s优化到1s以内)
      这篇文章主要方法是减少了重复逻辑方法,和把一些初始化放在子线程,我把初始化放在子线程的效果:

      MyApplication的0秒超神初始化
    • 启动页白屏或黑屏解决方案,并不能加快,只是让用户看起来快。
      https://blog.csdn.net/niceyoo/article/details/57073464
      这篇文章其实主要就两个方法,一个设置window透明,一个设置window背景为启动图片。

      • 设置透明的缺点:是点击了图标要等一下,感觉像是没有点击中图标的效果,手机好的话可以忽略。
      • 设置背景图片的缺点:全面屏,顶部电量栏白色,我使用ImmersionBar让其全屏适配,但是适配会在window背景图显示效果之后。给人的感觉就是先是一张启动图片,然后图片撑满的效果。
    • 全面屏白屏:
      https://blog.csdn.net/zheng_jiao/article/details/94010893

    最佳效果配置(效果1):

     <style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
            <item name="colorPrimary">@color/colorPrimary</item>
            <item name="colorPrimaryDark">@color/white</item>
            <item name="colorAccent">@color/colorAccent</item>
            <item name="windowNoTitle">true</item>
            <item name="android:windowTranslucentStatus">true</item>
            <item name="android:windowBackground">@drawable/splash</item>
        </style>
    

    效果1:

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

    效果2:

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

    效果3:

     <item name="android:windowLightStatusBar">false</item>
    

    or

    <item name="android:windowTranslucentStatus">false</item>
    

    但我想要的效果是直接不要电量栏部分,但始终没有找到配置的方法,寻找中...

    相关文章

      网友评论

        本文标题:APP启动时间,性能优化,启动页白屏

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