zoukankan      html  css  js  c++  java
  • Android 图片 OOM问题总结

    XML布局中加载的图片是不用GC的,

    他们是和View/Activity 绑定在一起,同生同死。

    UI上加载的可以使用SoftReference让虚拟机进行快速回收。
    如果迫切需要手动回收,严格控制内存开销,也许就该针对场景写Cache的管理了。

    对于一般的场景,使用栈的结构就足够了,对于期望高效流畅又有着复杂item的ListView的话
    可能需要预加载和手动回收。

    --------------------------------------------------------------------------------------------------------

    1.对图片进行预处理
    主要是根据实际大小对对质量进行压缩

    2.参考下android developer中的demo,里面有两点值得借鉴:一个是内存缓存,一个是disk缓存。可以很好的帮助你处理oom.

    楼上所说的是LruCache,你好好研究下这个官方DEMO,研究明白了,你以后所有的项目都可以使用这个DEMO中的方式,绝对不会出现OOM。另外,在Gallery3D的源代码中,好像有另外一种cache方式。

    --------------------------------------------------------------------------------------------------------

    https://github.com/dodola/android_waterfall/tree/master/src/net   可以加载上万张图片的瀑布流

    --------------------------------------------------------------------------------------------------------

    --------------------------------------------------------------------------------------------------------

    --------------------------------------------------------------------------------------------------------

  • 相关阅读:
    7.15的一些小练习
    关于turtle画蟒蛇小实例
    Javascript我学之四作用域
    Javascript我学之三函数的参数
    Javascript我学之二函数定义
    JavaScript我学之一变量类型
    叩响C#之门-继承
    《C#高级编程》之泛型--1创建泛型类
    VB6 仿.netWinfrom控件 Anchor属性类
    新写了XmlFile类
  • 原文地址:https://www.cnblogs.com/bavariama/p/2945608.html
Copyright © 2011-2022 走看看