尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图,
因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存。
因此,改用先通过BitmapFactory.decodeStream方法,创建出一个bitmap,再将其设为ImageView的 source,
decodeStream最大的秘密在于其直接调用JNI>>nativeDecodeAsset()来完成decode,
无需再使用java层的createBitm...
by landuochong - 移动操作系统 - 2011-12-22 08:51:02 阅读(941) 回复(0)
一、概述 1
二、android(Java)中常见的容易引起内存泄漏的不良代码 1
(一) 查询数据库没有关闭游标 2
(二) 构造Adapter时,没有使用缓存的 convertView 3
(三) Bitmap对象不在使用时调用recycle()释放内存 4<...
最近做一个android 平板电脑 内存测试 的问题, 尝试用 linux memtest移植过去,但是java调用一直都会出问题! 谁能指导我一下,欢迎给我点建议!!! 也可以加我MSN:[email]yefl1987@hotmail.com[/email] 一起学习进步!!
android释放内存(结束进程) 这两天在搞个内存清理小插件,网上很少这方面资料,之前找过清理缓存的例子测试,结果不成功。后来自己思考该怎么清理内存,于是成功搞出来了。 这两个方法是网上拷别人的,分别用来得到可用内存和内存总数,这样我们就可用得到了已用内存数。 View Code[code] private long getAvailMemory(Context context) { // 获取android当前可用内存大小 ActivityManager...
最近改bug时遇到了一个问题,一款游戏在被别的程序中断后再返回时会被意外终止,通过看log发现是由于图片编解码是申请内存失败的原因,接下来google了一下,发现android中这样的问题比较多,最后找到一个方法,将android dalvik的heapsize由原来默认的16M提高到32M,解决了这个问题,下面是参考的文章。
android 避免bitmap内存限制 在编写android程序的时候,我们总是难免会碰到OOM(OUT OF MEMORY)的错误,那么这个错误究竟是怎么来的呢,可以先看一下这篇文章android BITMAP内存限制OOM,OUT OF MEMORY。 这里,我使用Gallery来举例,在模拟器中,不会出现OOM错误,但是,一旦把程序运行到真机里,图片文件一多,必然会出现OOM,我们通过做一些额外的处理来避免。 1.创建一个图片缓存对象HashMap dataCa...
本帖最后由 q1531 于 2010-06-03 17:54 编辑 机器是milestone 系统android2.1 由于需要想修改properties里的ro.secure为0,因为这个是以ro.开头的不能使用setprop设置。 网上找到的办法是修改boot的default.prop再刷入,但在milestone上总是不成功,把修改后的boot刷入bootloader就无法引导启动了。听说的Milestone锁了bootloader的缘故。修改后的无法输入运行。 所以想到了通过直接操作内存的办法来修改。 在模拟器上,cat /...
HttpClient根据jsoup解析网页 Java代码[code]1.package jsoup; 2. 3.import org.apache.http.HttpEntity; 4.import org.apache.http.HttpResponse; 5.import org.apache.http.HttpStatus; 6.import org.apache.http.client.HttpClient; 7.import org.apache.http.client.methods.HttpGet; 8.import org.apache.http.impl.client.DefaultHttpClient; 9.import org.apache.http.util.EntityUtils; 1...
由android:process引发的内存限制的问题
android:process
定义activity运行所在的进程名称。一般情况下,应用的所有组件都运行在为应用创建的默认的进程中,该默认进程的名称应用包名称一致。通过定义
android之linux基础教学之一 内存地址 1.硬件中的“段”: 从80286CPU开始,英特尔处理器处理地址转换有两种方法,一种是实模式,一种是保护模式。实模式直接将物理地址(软件)映射为实际的设备地址(硬件)。保护模式则不同,进行一次转换,转换过程如下: 关于这个图。我觉得也没有什么好说的。我始终都觉得,我必须要知道这样设计的目的。为什么英特尔工程师鼓励将程序分成段。而不是直接在实模...