美文网首页
Ui卡顿及内存管理

Ui卡顿及内存管理

作者: David_zhou | 来源:发表于2018-03-15 22:40 被阅读17次

UI 卡顿原因分析

1 人为在UI线程中做轻微耗时操作,导致UI线程卡顿。

2 布局Layout 过于复杂,无法在16ms内完成渲染。

3 同一时间动画执行的次数过多,导致CPU或者GPU负载过重。

4 view过度绘制,导致某些像素在同一帧时间内被绘制多次,从而使CPU或者GPU负载过重

5 view频繁的触发measure,layout,导致measure layout累计耗时过多及整个view频繁的重新渲染。

6 内存频繁出发GC过多,导致暂时阻塞渲染操作。

7 冗余资源及逻辑导致加载和执行缓慢

8 ANR

解决方法

1 布局优化

2 列表及adapter优化 滑动结束才加载

3 背景和图片等内存分配优化

4 避免ANR

内存管理 分为 内存分配和回收管理内存

管理机制的特点

1 更少的占用内存

2 在合适的时候,合理的释放系统资源

3 在系统内存紧张的情况下,能释放掉大部分不重要的资源,来为Android 系统提供可用的内存

4 能够很合理的在特殊的生命周期中,保存或者还原重要数据,以至于系统正确的重新恢复该应用

内存优化方法

1 当Service 完成任务时,尽量停止它,或者使用intentService

2 UI不可见时,释放掉一些只有UI使用的资源 ontrimMemory

3 在系统内存紧张的时候,尽量释放一些不重要的资源 ontrimMemory

4 避免滥用bitmap 导致的内存浪费

5 使用针对内存优化过的数据容器 parseInteger  不用枚举类

6 避免使用依赖注入的框架

7 使用ZIP 对齐的apk

8 使用多进程 消耗内存过大或者需要长期在后台运行的模块

内存泄漏

1 不恰当的单例模式

2 匿名内部类

3 handler (改成静态内部类,弱引用的方式持有对象 removemessage)

4 避免使用static 变量(懒加载)

5 资源未关闭

6 AsyncTask造成的内存泄漏

7 bitmap的recycle

8 listview优化

解决OOM

1 bitmap

a 图片显示  选择大小合适的尺寸

b 及时释放内存  bitmap的recycle 可释放native

c 图片压缩 insamplesize

d inBitmap  bitmap内存复用

e 捕获异常  outOfMemoryError

2 其他方法

a listview的view 复用  大图使用lru 缓存b 避免在ondraw 中创建对象

c 谨慎使用多进程

相关文章

  • Ui卡顿及内存管理

    UI 卡顿原因分析 1 人为在UI线程中做轻微耗时操作,导致UI线程卡顿。 2 布局Layout 过于复杂,无法在...

  • Android进阶

    一、性能优化 ANR,内存溢出,内存抖动,内存泄漏,UI卡顿,冷启动优化(https://www.jianshu....

  • Android性能优化大纲

    1.内存优化 内存泄漏 优化分析 内存优化工具 2.UI优化 UI卡顿分析 渲染优化 计算性能优化 3.电量优化 ...

  • 如何定位内存抖动?StringBuilder.toString(

    优化方向 内存问题 泄漏 大对象 抖动 页面加载速度 冷热启动 页面卡顿 UI刷新框架:事件驱动型,虽然便于管理。...

  • Android UI性能分析常用工具

    Android开发过程中,难免会遇到ui卡顿,内存泄漏情况,下面介绍常用工具来解决上述问题 1. UI卡顿的原因①...

  • Android超实用最全面试大纲(三)

    文章目录: ANR面试题 OOM面试题 Bitmap面试题 UI卡顿面试题 内存泄漏面试题 内存管理面试题 一、A...

  • Android最全面试大纲(三)

    文章目录: ANR面试题 OOM面试题 Bitmap面试题 UI卡顿面试题 内存泄漏面试题 内存管理面试题 一、A...

  • 无标题文章

    APP性能优化 UI卡顿优化 View的绘制原理 UI卡顿原理分析 UI卡顿检测分析 BlockCanary原理分...

  • Activity 性能优化方案

    Activity 性能优化方案UI 卡顿原理UI卡顿常见原因优化手段 UI 卡顿原理人类大脑与眼睛对一个画面的连贯...

  • 四、内存抖动与OOM

    1.内存抖动:内存频繁的分配和回收,频繁的gc会导致UI卡顿,严重的时候导致out of memory error...

网友评论

      本文标题:Ui卡顿及内存管理

      本文链接:https://www.haomeiwen.com/subject/cfmkqftx.html