性能优化 App启动优化

代码可优化区域:
1.Application onCreate (使用线程的方式初始化,懒加载)
2.应用程序的第一界面Activity onCreate
3.xml布局
4.利用提前展示出来的Window,快速展示出来一个界面,给用户快速反馈的体验;
5.避免在启动时做密集沉重的初始化(Heavy app initialization);
6.定位问题:避免I/O操作、反序列化、网络操作、布局嵌套等。
造成的原因:
● 部分数据库及IO的操作发生在首屏Activity主线程;
● Application中创建了线程池;
● 首屏Activity网络请求密集;
● 工作线程使用未设置优先级;
● 信息未缓存,重复获取同样信息;
● 流程问题:例如闪屏图每次下载,当次使用;

项目修改:

  1. 数据库及IO操作都移到工作线程,并且设置线程优先级为THREAD_PRIORITY_BACKGROUND,这样工作线程最多能获取到10%的时间片,优先保证主线程执行。(此处要确认所执行的代码要符合业务逻辑)
  2. 流程梳理,延后执行;
    实际上,这一步对项目启动加速最有效果。通过流程梳理发现部分流程调用时机偏早、失误等,例如:
    ● 更新等操作无需在首屏尚未展示就调用,造成资源竞争;
    ● 自有统计在Application的调用里创建数量固定为5的线程池,造成资源竞争
    ● 修改广告闪屏逻辑为下次生效。
    3.其它优化;
    ● 去掉无用但被执行的老代码;
    ● 去掉开发阶段使用但线上被执行的代码;
    ● 去掉重复逻辑执行代码;
    ● 去掉调用三方SDK里或者Demo里的多余代码;
    ● 信息缓存,常用信息只在第一次获取,之后从缓存中取;
    ● 项目是多进程架构,只在主进程执行Application的onCreate();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值