Android App 优化小点

积极思考造成积极人生,消极思考造成消极人生。


本文记录最近针对手头应用做的一些优化,主要介绍优化切入点,具体优化措施,不做重点描述。

UI重绘问题

透过开发者模式下的重绘检查选项,检查过度重绘问题。开启检测过渡绘制开关,UI类似下图的样子。
这里写图片描述

官方的过度绘制说明如下:
这里写图片描述
透过上述信息就能直观看到是否存在过渡绘制问题。过度绘制问题发现后,主要通过两种方式解决:

  1. 使用ConstraintLayout减少布局嵌套
  2. 使用ViewStub惰性加载非必须呈现的UI
  3. 清理代码,移除旧代码中已经废弃的UI

不必要的网络请求

不必要的网络请求会无端消耗用户宝贵的流量,同时也会拉高应用的功耗,降低应用性能。
查看网络请求可以通过android studio的Profiler工具监测,同时也可以用chrome浏览器进行查看,本文介绍chrome浏览器查看。
在这里插入图片描述
如上图在chrome浏览器输入

chrome://inspect/

点击inspect,会弹出工具框
在这里插入图片描述
每一次操作引起的网络请求都会在右边显示出来,我们可以直观的看到哪些网络请求在频繁的调用。
在针对我们应用debug时通过该工具就发现了进入直播间会频繁下载礼物动画资源的情况。礼物动画资源比较大,有的可以达到10M左右,为了在直播间播放礼物时,能够流程,大礼物资源都是提前预先下载到本地的,然而这里每次进入直播间都可以看到在下载礼物,这个就非常不合业务逻辑了,发现该可疑点后,通过代码排查发现是我们用到的Fresco框架,在设置本地缓存时只设置了200M,而大礼物体积比较大,很容易就达到本地缓存上限,于是Fresco框架自动删除了一些本地缓存的大礼物,这就导致了每次进入直播间,都在下载大礼物。
将本地缓存增大后,在查看就发现没有在出现每次进入直播间都在下载大礼物了。结合android studio的Profiler工具可以看到网络请求很平稳了。
在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值