美文网首页
Android如何启动优化?

Android如何启动优化?

作者: 王多鱼2 | 来源:发表于2021-03-14 23:44 被阅读0次

    首先,启动优化我要知道app启动大概经历那几个步骤;
    APP启动分为几个步骤?
    1,Application的启动
    2,SpalshActivity;闪屏页?
    3,首页MainActivity;

    第一步:Application的启动,属于进程的启动;
    1,我们知道多个进程很可能多次启动;
    所以,我们要避免applicationId以外的进程执行不必要的执行代码;(就是判断是否在主进程,其他进程做自己相关的事情;)
    很多第三方的库会加入自己的进程初始化;
    2,初始化任务分级分类型;耗时的,必要非必要的,可延时的任务; 丢入子线程或者主线程或延时加载;
    2的补充,并且在每段任务初始化方法加入耗时日志监控;

    application 有几个入口? 1,桌面图标
    2,点击通知栏
    3,deeplink。scheme
    4,快捷方法;
    第二步: 加入SpalshActivity;1,过渡一下,体验优化;
    2,统一入口启动的路径是直线的,而不是网状的;

    什么时候结束SpalshActivity; onStop时;
    因为SpalshActivity 启动MainActivity;
    SpalshActivity 的onPause方法会在优先MainActivity的onCreate执行; 为什么这么设计,安全第一原则,很可能启动失败;onPause是用来保存数据的;
    SpalshActivity 的onStop 方法 会 在MainActivity的onResume 之后, 为什么这么设计,体验优先原则;

    这样就会在MainActivity完全显示之后 才关闭SpalshActivity;

    第三步:MainActivity的优化,
    大多数APP 首页会用viewpager+fragment; 这个时候如何采用懒加载的方法 实现 预加载的功能呢?
    经验所得; fragmentAdapter;AndroidX; 在onResume的时候才加载数据;viewModel 判断数据是否为null来觉得加载数据还是更新数据;
    每次viewpager滑动的时候会有加载圈;如何优化呢?
    可以在viewpager滑动那个滑动监听, 提前调用数据加载; 它的滑动事件优化fragment的事件onResme 200ms;

    相关文章

      网友评论

          本文标题:Android如何启动优化?

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