Android Framework 框架之 APP内存优化

本文详细介绍了Android应用内存优化的策略,包括监视内存使用、响应事件释放内存、分析内存需求、使用内存优化框架、避免内存泄漏、减少内存密集型资源等,旨在提升应用性能和用户体验。同时强调了谨慎使用Services、优化数据容器、使用nano protobufs、避免内存泄漏、减小APK大小和使用Dagger 2的重要性。
摘要由CSDN通过智能技术生成

随机存取存储器(RAM)在任何软件开发环境中都是非常有价值的资源,但对于物理内存经常受到限制的移动操作系统来说,它更有价值。 尽管Android运行时(ART)和Dalvik虚拟机都执行常规垃圾收集,但这并不意味着您可以忽略应用程序分配和释放内存的时间和位置。 您仍然需要避免引入内存泄漏,通常由静态成员变量中的对象引用引起,并在生命周期回调定义的适当时间释放任何引用对象。

本页面介绍了如何主动减少应用程序中的内存使用量。 有关Android操作系统如何管理内存的信息,请参阅Android内存管理概述

本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:

  1. 监视可用内存和内存使用情况

  2. 为响应事件释放内存

  3. 分析检查你的app需要用多少内存

  4. 使用内存优化框架

  5. 移除内存密集型资源,以及lib库

希望看到这里的您 有任何需要都可以私信我哦

1. 监视可用内存和内存使用情况

在修复解决APP 中的内存使用问题之前,首先需要找到它们。 Android Studio中的内存分析器Memory Profiler可以帮助您通过以下方式查找和诊断内存问题:

  • 1 . 看看你的应用程序随着时间的推移如何分配内存。

Memory Profiler显示了一个实时图,显示您的应用程序使用了多少内存,分配了Java对象的数量以及何时发生垃圾回收。

  •  

    1. 启动垃圾收集事件并在运行应用程序时抓取Java堆的快照。

  •  

    1. 记录您的应用程序的内存分配

然后检查所有分配的对象,查看每个分配的堆栈跟踪,然后跳转到Android Studio编辑器中的相应代码。

如Android内存管理概述中所述。

2. 为响应事件释放内存

Android可以通过多种方式从您的应用程序中回收内存,或者在必要时将应用程序彻底关闭以释放内存以用于关键任务。 为了进一步帮助平衡系统内存,避免系统需要终止应用程序进程,可以在Activity类中实现ComponentCallbacks2接口。 提供的onTrimMemory()回调方法允许您的应用程序在您的应用程序处于前台或后台时侦听与内存相关的事件,然后释放对象以响应应用程序生命周期或指示系统需要回收内存的系统事件。

例如,您可以实现onTrimMemory()回调以响应不同的内存相关事件,如下所示:

import android.content.ComponentCallbacks2;// Other import statements ...public class MainActivity extends AppCompatActivity
    implements ComponentCal
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值