启动速度优化记录

启动速度优化

初步测试

初步测试各个方法耗时:

序号测试结果(ms)
Freso45
DownloadMannager3
okCache80
imageLoader17
Bugly40
LoginFromLocal167
InitSobot4
InitHpplay57
initYouZan220

测试依据

Trace分析 : 测试依据:具体可以参考 https://zhuanlan.zhihu.com/p/27331842 (支付宝大佬通过这个测试)

优化 Application 部分

代码如下:

 @Override
    public void onCreate() {
        super.onCreate();
        Trace.beginSection("KaishuApplication");
        // .... 省略中间代码
        Trace.endSection();
    }

开始测试,Let‘s Go !!!!!!

一、 启动优化前(BH540 分支测试):

测试步骤: 测试五次,去掉一个最高,去掉一个最低: 然后剩下三个取平均值

序号测试结果(ms)平均值
11593去掉
21619去掉
31579采用
41598采用
51571采用

最终平均值: (1579+1598+1571)/ 3= 1583ms

二、 启动优化后:

处理方法: 异步处理极光和友盟,去掉设置极光别名后,代码 修改如下:

// 异步处理 极光和友盟   todo: 有赞(200ms)左右还需要和有赞沟通是否能有api来优化
if (DeviceUtils.isMainProcess(this)) {
            ExecutorService executorService = Executors.newSingleThreadExecutor();
            executorService.execute(new Runnable() {
                @Override
                public void run() {
                    JPushInterface.setDebugMode(false);
                    JPushInterface.init(context);
                    initUmengShareAndLogin();
                    initUmengStatistics();
                }
            });
        }
// 单独为KaishuApplication 初始化 登录的方法
public static void setLoginedFromLocal(Context context, MasterUser localMasterUser) {
        //*************************
        if (DeviceUtils.isMainProcess(context)) {
            setLoginedForApplication(localMasterUser, false);
        }
    }

  public static void setLoginedForApplication(MasterUser user, boolean bwriteToLocal) {
      ....
      // 注释 设置别名 单独为
//        JPushInterface.setAlias(KaishuApplication.getContext(), 1, "jpush" + masterUser.getUserid());

      ....
    }

测试步骤: 测试五次,去掉一个最高,去掉一个最低: 然后剩下三个取平均值

序号测试结果(ms)平均值
1692去掉
2770去掉
3708采用
4717采用
5701采用

最终平均值: (708+717+701)/ 3= 709ms

最终优化结果

最终优化结果: (1583-709) / 1583 = 55.2 %

优化速度 55.2%

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值