策略:

1. 图片压缩

如果所需尺寸大于图片原始尺寸,可以压缩图片节省内存。

2. 图片缓存

每个图片加载时都会生成一个 Bitmap。把这些 Bitmap 缓存起来以重用相同的图片,避免重复创建。

3. Bitmap 回收

每次生成的 Bitmap 保存起来,在不需要的时候或者内存紧张的时候回收(Bitmap 的 recycle 方法)。

参考文章:

http://developer.android.com/training/articles/memory.html

https://developer.android.com/training/displaying-bitmaps/index.html

http://blog.csdn.net/guolin_blog/article/details/9316683

http://blog.csdn.net/jdsjlzx/article/details/7620125

Android 多图,大图内存优化的更多相关文章

  1. Android避免OOM(内存优化)

    Android内存优化是性能优化很重要的一部分,而如何避免OOM又是内存优化的核心. Android内存管理机制 android官网有一篇文章 Android是如何管理应用的进程与内存分配 Andro ...

  2. android 开发如何做内存优化

    不少人认为JAVA程序,因为有垃圾回收机制,应该没有内存泄露.其实如果我 们一个程序中,已经不再使用某个对象,但是因为仍然有引用指向它,垃圾回收器就无法回收它,当然该对象占用的内存就无法被使用,这就造 ...

  3. Android之——图片的内存优化

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46972817 1. 对图片本身进行操作 尽量不要使用 setImageBitmap ...

  4. Android内存优化————加载长图

    项目中总会遇到加载长图的需求,图片的长度可能是手机长度的很多倍,也就是需要通过滑动来查看图片.比较简单的实现方式就是使用ScrollView来加载长图,但是这样做有一个很严重的问题,就是内存消耗严重. ...

  5. 【MDCC技术大咖秀】Android内存优化之OOM

    大神分析的很全面,所以就转过来保存一份,转自:http://www.csdn.net/article/2015-09-18/2825737/1 以下为正文: Android的内存优化是性能优化中很重要 ...

  6. Android内存优化之OOM

    内容大多都是和OOM有关的实践总结概要.理解错误或是偏差的地方,还请多包涵指正,谢谢!本人Q:1524447071 (一)Android的内存管理机制 Google在Android的官网上有这样一篇文 ...

  7. 【腾讯Bugly干货分享】Android内存优化总结&实践

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/2MsEAR9pQfMr1Sfs7cPdWQ 导语 智 ...

  8. Android 性能优化之内存泄漏检测以及内存优化(中)

    https://blog.csdn.net/self_study/article/details/66969064 上篇博客我们写到了 Java/Android 内存的分配以及相关 GC 的详细分析, ...

  9. Android内存优化杂谈

    Android内存优化是我们性能优化工作中比较重要的一环,这里其实主要包括两方面的工作: 优化RAM,即降低运行时内存.这里的目的是防止程序发生OOM异常,以及降低程序由于内存过大被LMK机制杀死的概 ...

随机推荐

  1. docker field

  2. android处理Back键Home键和Menu键事件(转)

    @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BAC ...

  3. 12 MySQL--内置功能介绍

    mysql内置功能: 1.视图 2.触发器 3.存储过程 4.事务 5.函数 6.函数流程控制 一.视图 介绍: 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名] ...

  4. CLR的八大特性

    [CLR的八大特性] Code that you develop with a language compiler that targets the runtime is called managed ...

  5. ORA-10873

    [问题现象] SQL> ALTER DATABASE OPEN; alter database open * ERROR at line 1: ORA-10873: file 36 needs ...

  6. 数论知识总结——史诗大作(这是一个flag)

    1.快速幂 计算a^b的快速算法,例如,3^5,我们把5写成二进制101,3^5=3^1*1+3^2*2+3^4*1 ll fast(ll a,ll b){ll ans=;,a=mul(a,a)))a ...

  7. 73. Set Matrix Zeroes (Array)

    Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place. Follow ...

  8. springboot中的任务(异步任务--定时任务--邮件任务)

    1.pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...

  9. Linq操作DataTable

    IEnumerable<DataRow> q = from dr in dt.AsEnumerable()                          where dr.Field& ...

  10. import c++ project to eclipse cdt with exiting makefile

    Step 2: You are now ready to build your project. To build your project, select Project > Build Pr ...