您的位置:首页 > 移动开发 > Android开发

关于Android性能优化的若干方案

2017-02-16 23:26 337 查看

概述

通常项目比较大的APP都面临着如下性能问题,APP启动慢、界面跳转慢、事件相应慢、滑动和动画卡顿、展现内容慢等,有的公司处理的很好,有的还有很大的优化空间,对于性能优化,怎么去做,我总结了一下性能优化如何入手,Android性能优化这个系列目前已经完成11篇,涉及到常用内存优化工具的使用,比如Memory Monitor、MAT、Allaction Tracing、TraceView 等,也涉及到如何提高应用的启动速度以及页面的渲染速度,还有流畅度的检测。学会这些,基本上可以处理一般的性能问题了,这段时间需要研究插件化和算法,实在抽不出来时间去总结学习性能优化的相关知识了,日后会在此页面中更新。

本文将从以下几个方面对Android的优化做讲解:

第一篇简单回顾java的内存区域划分、引用、内存泄露以及场景,还有垃圾回收

Android性能优化第(一)篇—基本概念

第二篇主要是使用过Android Studio自带工具Memory Monitor 检测内存泄露

Android性能优化第(二)篇—Memory Monitor检测内存泄露

内存泄露的检测工具MAT

Android性能优化第(三)篇—MAT比Menmery Monitor更强大

了解Android渲染机制,为什么16ms没完成绘制就会卡顿?

Android性能优化第(四)篇—Android渲染机制

Allaction Tracing是追踪内存分配的工具,Allaction Tracing实践

Android性能优化第(五)篇—Allaction Tracing追踪内存分配的

TraceView 是 Android 平台特有的数据采集和分析工具,主要用做热点分析,找出最需要优化的点。

Android性能优化第(六)篇—TraceView 分析图怎么看

StrictMode意思为严格模式,是用来检测程序中违例情况的开发者工具。使用一般是场景是检测主线程中本地磁盘和网络读写等耗时的操作。注意这个StrictMode是在Anroid2.3以后引入的。严格模式主要检测两大问题,一个是线程策略,即TreadPolicy,另一个是VM策略,即VmPolicy。

Android性能优化第(七)篇—StrickMode严苛模式检测耗时与内存问题

介绍如何统计应用的启动时间和性能检查项,并且用TraceView逐个修复

Android性能优化第(八)篇—App启动速度优化之耗时检测处理

Android性能优化第(九)篇—App启动速度优化

说到应用的流畅度,都会想到FPS,FPS评测应用流畅度不准确,系统获取FPS的原理是:手机屏幕显示的内容是通过Android系统的SurfaceFLinger类,把当前系统里所有进程需要显示的信息合成一帧,然后提交到屏幕上进行显示,FPS就是1秒内SurfaceFLinger提交到屏幕的帧数。但是用FPS来评测一个应用是否真的卡顿存在两个问题,我们可以使用Choreographer帧率检测。

Android系统每隔16ms就重新绘制一次Activity,如果没有完成就会有丢帧的现象。为了减轻UI绘制的负担,有必要把Layout编写的一些注意事项总结一下

Android性能优化第(十)篇—布局优化

Android性能优化第(十 一)篇—卡顿分析,正确评测流畅度

Android性能优化第(十四)篇—MultiDex初次启动优化

Android性能优化第(十 五)篇—Systrace的使用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐