Android开发Android开发经验谈Android技术知识

Android 把性能优化落到实处

2019-03-11  本文已影响37人  Android开发架构

App的优化目的是为了让应用更快、更稳定、更小。网上也有很多相应的文章,但是很多因为花费时间跟优化程度不成正比,或者许多在开发过程中自己已经避免了所以仅仅记录一下自己最近用过的。

更快
启动白屏

把启动页的主题换成

注意

延时加载

addIdleHandler 方法是当handle线程空闲再执行,基本上可以理解为界面显示后再执行。具体原理可以看mp.weixin.qq.com/s/KpeBqIEYe…

异步加载

对于一些没必要在主线程执行的代码,如sp、数据库等代码可以在子线程初始化。

布局优化

看看是否过度绘制以及嵌套层级是否过多。这种一般在写代码时注意一下后期可以避免很多工作。

一些其他
点击事件优化

很多app没有做点击误差处理,所以有时候点击两次会出现两个界面,虽然影响不大但是为了让用户体验更好。最好一开始就做好

  1. 使用RxBind具体看github

  2. 使用工具类

图片压缩

更小的图片意味着加载更快,上传也更快。

更稳定

避免内存泄漏、内存抖动。我个人觉得这跟平时写代码比较相关

注意
出现卡顿是我们需要一些工具的辅助排查
崩溃问题

虽然在测试阶段已经会把这个过滤掉,但是实际使用时可能数据出错等等的原因都可能导致崩溃。这时我们最好接入Bugly,接入方法可以看官网,每次崩溃bugly都会记录。但是bugly每天只会推送一次,如果我们需要做一些预警,可以监听app崩溃做个通知发给钉钉机器人或者我们自己的后台方便我们做热修复。

钉钉群截图如下,具体实现可以看对应官方文档以及博客。相对来说比较简单没什么技术含量,只是提供个方案。

image
更小

可以去除没用的布局、资源以及库加上代码混淆。一般公司可能用不到插件化我也不是很熟悉。

image
代码混淆

篇幅较长不做过多讲解,学习混淆最主要的是知道混淆原则,就是哪些不应该被混淆。

免费获取安卓开发架构的资料(包括Fultter、高级UI、性能优化、架构师课程、 NDK、Kotlin、混合式开发(ReactNative+Weex)和一线互联网公司关于android面试的题目汇总可以加:936332305 / 链接:点击链接加入【安卓开发架构】:https://jq.qq.com/?_wv=1027&k=515xp64


上一篇 下一篇

猜你喜欢

热点阅读