随笔分类 -  android

摘要:Android的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是16M。但是Android采用的是Java语言编写,所以在很大程度上,Android的内存机制等同于Java的内存机制,在刚开始开发的时候,内存的限制问题会给我们带来内存溢出等严重问题。在我们不使用一些内存的时候,我们要尽量在Android或者其他平台上避免在运行其他程序时,保存必要的状态,使得一些死进程所带来的内存问题,应该尽量在关闭程序或者保存状态的时候释放掉,这样能提高系统在运行方面的流畅性。Android的内存主要表现在:1.在Android平台上,长期保持一些资源的引用,造成一些内存不能释放,带来的内存泄露问题很多 阅读全文
posted @ 2012-06-24 20:52 Java之旅 阅读(1870) 评论(1) 推荐(0)
摘要:1、将图片转化为缩略图再加载:1 BitmapFactory.Options options = new BitmapFactory.Options();2 options.inSampleSize = 2;3 Bitmap img = BitmapFactory.decodeFile("/sdcard/1.png", options); 该段代码即是读取1.png的缩略图,长度、宽度都只有原图片的1/2。图片大小减少,占用的内存自然也变小了。这么做的弊端是图片质量变差,inSampleSize的值越大,图片的质量就越差。由于各手机厂商缩放图片的算法不同,在不同手机上的缩放 阅读全文
posted @ 2012-06-24 20:41 Java之旅 阅读(1501) 评论(1) 推荐(0)
摘要:一、概述 1二、Android(Java)中常见的容易引起内存泄漏的不良代码 1(一) 查询数据库没有关闭游标 2(二) 构造Adapter时,没有使用缓存的 convertView 3(三) Bitmap对象不在使用时调用recycle()释放内存 4(四) 释放对象的引用 4(五) 其他 5三、内存监测工具 DDMS --> Heap 5四、内存分析工具 MAT(Memory Analyzer Tool) 7(一) 生成.hprof文件 7(二) 使用MAT导入.hprof文件 8(三) 使用MAT的视图工具分析内存 8一、概述 Java编程中经常容易被忽视,但本身又十分重要的一个问 阅读全文
posted @ 2012-02-14 11:24 Java之旅 阅读(193) 评论(0) 推荐(0)