zoukankan      html  css  js  c++  java
  • Android学习之内存优化

        本文部分内容来自http://blog.csdn.net/a396901990/article/details/37914465,感谢博主的分享,知识很系统很全面。

        这两天在看Android的内存优化方面的知识,Android开发中最容易出现的就是内存泄露问题,因为Android内存是有限的,而且并不是很大,这就要求开发人员在开发客户端时要格外注意内存的优化,避免出现内存泄露。

           那么内存泄露会引发哪些问题呢?

          1、程序卡顿,响应速度慢(内存占用高时JVM虚拟机会频繁触发GC)

       2、程序莫名消失(当程序所占内存越大,它在后台的时候就越可能被干掉。反之内存占用越小,在后台存在的时间就越长)

          3、直接崩溃(OutOfMemoryError)

        上面提到的博主,在他的博文中提出通过“5R”方法对Android的内存进行优化,“5R”即为:Reckon(计算)Reduce(减少)Reuse(重用)Recycle(回收)、Review(检查)。他提到的一些小技巧很值得开发人员们学习哦。

               Reckon(计算)我就不详述了,感兴趣的可以去上文中的博客中去看看。

          我来说一下我在开发中使用到的部分和想要学习的部分

          (这里是列表,上文中的博客中对这些都有详细的介绍哦,我这样列在这里是为了让自己思路更清晰,内容太多,我会继续分篇整理,做大神的搬运工.ps: 排版简直神烦)

            1、减少内存使用(Reduce

                    (1)图片处理

             (2)对常量使用static final修饰符

             (3)静态方法代替虚拟方法

            (4) 减少不必要的全局变量

            (5)避免创建不必要的对象

            (6)避免内部Getters/Setters

            (7)避免使用浮点数

            (8)使用实体类比接口好

            (9)谨慎使用枚举

            (10)注意for循环

             (11)使用类库

                  2、重用已有资源

             (1)缓存的使用(Cache)

            (2)池(Pool)

            (3)适配器(Adapter)

           3、回收闲置的内存

            (1)JAVA的垃圾回收机制

            (2)资源回收(实用型)

                 4、检查自己的代码

                    (1)UI检查(控件、布局优化)

             (2)设计检查(框架、逻辑优化)

              

                         

     

  • 相关阅读:
    node.js JS对象和JSON字符串之间的转换
    read和write函数
    使用stdarg.h实现可变长度参数
    PHP __DIR__, __FILE__, __FUNCTION__, __CLASS__, __METHOD__, __LINE__, __NAMESPACE__
    Yii中 RBAC(基于角色的访问控制权限)表结构原理分析
    让服务器apache/iis/nginx支持.apk/ipa文件下载
    jQuery的maskedinput插件 设置input掩码
    修改XCode的Product的输出目录(有时不生效需看)
    OC的类别(分类)和拓展
    C和C++混合编程中的extern "C" {}
  • 原文地址:https://www.cnblogs.com/mafangfang/p/5432258.html
Copyright © 2011-2022 走看看