- 浏览: 436719 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (267)
- java (8)
- 求职&面试 (1)
- linux (33)
- windows (1)
- C++ (5)
- android (12)
- QT (1)
- 经验 (1)
- memory-leaks (1)
- Streaming&V/A (1)
- network&security (5)
- SCM (13)
- mysql (10)
- browsers (4)
- Windows APIs (2)
- opensource (1)
- pm (1)
- GDI (1)
- database (14)
- MFC (1)
- web&fronts (17)
- Tomcat (4)
- OLE (1)
- 观后感 (1)
- Production (2)
- UML (3)
- Javascript (7)
- Cloud Computing&SAAS (5)
- SoftwareEngineering (1)
- Computer&Maintenance (1)
- Web (8)
- Desgin (1)
- J2ee (10)
- mysql cluster (0)
- LB&HA (2)
- webserver (11)
- php (5)
- cas&authtication (0)
- Languages (1)
- IDEs (3)
- architecture (2)
- iOS (8)
- spring (3)
- webservices (1)
- security (1)
- MVCFrameworks (2)
- bservices (0)
- build-tools (2)
- unittest (1)
- spring-security (0)
- sphinx (2)
- hibernate (1)
- mybatis (2)
- search (0)
- nginx (2)
- design&production (2)
- DFS (0)
- algorithm (0)
- distributed&network (0)
- blogs (0)
- os&admin (0)
- fastcgi (0)
- kv-db (0)
- operation&maintenance (1)
- productions (9)
- 养生 (1)
- appserver (1)
- HTTP (2)
- test (1)
- erlang (2)
- browser (0)
- 非技术 (2)
- mobiles (2)
- cloud computing (2)
- Business (2)
- maven (1)
- python (5)
- 人生 (0)
- Cryptography (3)
- CV (0)
- cms (2)
- jqm (2)
- html (2)
- flex (1)
- redmine (1)
- iptables (1)
- groovy (1)
- scala (1)
- grails (1)
- ftp (3)
- vsftpd (2)
- lua (0)
- chroot (3)
- jailkit (3)
- UED (0)
- myeclipse (2)
- ide (2)
- eclipse (2)
最新评论
-
Nick712:
http://blog.csdn.net/victory08/ ...
处理SVN出现:Cleanup failed to process the following paths: xxx -
xs6262460:
Spring AOP根据JdbcTemplate方法名动态设置数据源 -
xhpscdx:
我的解决办法是把D:\ACRS\Projects\TAIS 下 ...
处理SVN出现:Cleanup failed to process the following paths: xxx -
hnraysir:
总结得相当不错,支持下。
使用CodeIgniter 创建 RESTful 服务 REST API【原创译文】 -
云上太阳:
这个必须评论下,间接的救过俺的命啊
解决tomcat启动报错,加强错误日志的显示:
因为Android本身的限制,在2.x版中使用 Bitmap 只要遇到稍大一点的图,很容易就会遇到 out of memory 的状况,在经过一阵搜寻之后,一直没有很好的方法,有很多网站介绍的方法是把原图 subsample,但对于图片quality有要求的程序来说,这可是不被接受的解法,搞了半天,最后只好直接把 Android 的 source code 拿出来瞧瞧看看是否有什么机会解决这个问题,突然发现原来这个问题竟然有个投机取巧的解决方法。
目前在网站上找到的结果,效果最有效的是使用
BitmapFactory.Options
将里面的 inPurgeable 设定为 true,这样可以让java系统内存不足时先行回收部分的内存,这个方法其实已经解决大部分的问题了,不过生出来的内存还是算在java 的VM里总是有些美中不足。
在看了source code 之后,我发现在BitmapFactory.Options里竟然有一个inNativeAlloc的public变量,可以直接不把使用的内存算到VM里,有趣的是这个变量是个隐藏版的变量,所以在正常的SDK文件中看不到,用eclipse时也不会提示你,也不能直接用,因此我用了一些小技巧将这个变量设成true,如此一来bitmap out of memory的问题发生的机率又更低了,以下就是目前的程序代码,有需要的人可以参考一下,不过不管怎么样,bitmap这东西,只要不用了,还是请尽量将它recycle,不然再多内存也是不够用地~
public Bitmap decodeFile(String filePath){ Bitmap bitmap = null; BitmapFactory.Options options = new BitmapFactory.Options(); options.inPurgeable = true; try { BitmapFactory.Options.class.getField("inNativeAlloc").setBoolean(options,true); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (NoSuchFieldException e) { e.printStackTrace(); } if(mFilePath != null) { bitmap = BitmapFactory.decodeFile(mFilePath, options); } return bitmap; }
发表评论
-
android中实现消息推送
2013-04-18 11:45 1763android中实现消息推送 ... -
android 9patch (讲的很不错,相当全面:转)
2012-12-21 14:29 952android 9patch (讲的很不错,相当全面 ... -
ios, anroid统一推送
2012-12-17 15:01 0Location: Home / HomeLang ... -
Android Service待机/睡眠时运行
2012-12-06 23:38 0Android Service待机/睡眠时运行 ... -
android中实现消息推送
2012-12-05 23:30 0android中实现消息推 ... -
androidpn的学习研究(五)【转】androidpn-client 常见BUG解决方法
2012-12-05 22:57 0androidpn的学习研究(五)【转】andro ... -
解决androidpn服务器端掉线不会重连的问题
2012-12-05 22:50 5984解决androidpn服务器端掉线不会重连的问题 wi ... -
HttpClient的超时用法小记
2012-11-25 00:02 0HttpClient的超时用法小记 Ht ... -
Android的网络请求中GZip的使用
2012-11-04 00:28 0Android的网络请求中GZip的使用 刚才去 ... -
HttpClient实现对GZip压缩的Response进行解压
2012-11-03 23:48 0HttpClient实现对GZip压缩的Respo ... -
为android的HttpClient添加请求超时时间
2012-11-03 23:36 0在以前做一个android的移动项目的时候, ... -
演化理解 Android 异步加载图片
2012-11-03 17:59 852演化理解 Android 异步加载图片 ... -
Android Activity和Intent机制学习笔记
2012-10-10 16:22 949Android Activity和Intent机 ... -
Android推送通知指南
2012-10-07 15:55 957Android推送通知指南 ... -
Google Android chat using Jetty Cometd java client
2012-09-03 10:46 0Google Android chat usin ... -
Android Push Notification实现信息推送使用
2012-09-03 10:35 0Android Push Notification实 ... -
深入剖析Android消息机制
2012-08-30 23:44 819深入剖析Android消息机制 在Android ... -
AsyncTask的用法
2012-08-30 23:45 741在开发A ... -
Debugging the hello-jni project with Visual Studio
2012-07-20 14:03 1339Debugging the hello-jni proj ... -
利用Necessitas 在Qt上实现Android应用开发
2012-06-19 10:59 1077Necessitas是一个 用于Android平台的qt开 发 ...
相关推荐
android bitmap outofMemory 用来解决android中常见的bitmap outOfMemory
ANDROIDBITMAP内存限制OOM,OUTOFMEMORY.pdf
ANDROIDBITMAP内存限制OOM,OUTOFMEMORY[文].pdf
在Android开发中,我们经常与Bitmap打交道,而对Bitmap的不恰当的操作经常会导致OOM(Out of Memory)。这篇文章我们会介绍如何高效地在Android开发中使用Bitmap,在保证图片显示质量的前提下尽可能占用更小的内存。
Android 加载大图及多图避免程序出现OOM(OutOfMemory)异常 1、高效加载大图片 我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们...
首先,OOM就是内存溢出,即Out Of Memory。也就是说内存占有量超过了VM所分配的最大。 怎么解决OOM,通常OOM都发生在需要用到大量内存的情况下(创建或解析Bitmap,分配特大的数组等),在这样的一种情况下,就可能...
Android Image Cache,use disccache,memory cache to limit the program's bitmap's memory,in case of OutOfMemory error!
方法将突破转成Bitmap时,遇到大一些的图片,我们经常会遇到OOM(Out Of Memory)的问题。怎么避免它呢? 这就用到了我们上面提到的BitmapFactory.Options这个类。 BitmapFactory.Options这个类,有一个字
将保存在本地的图片取出并缩小后显示在界面上、由于Bitmap内存占用较大,这里需要回收内存,否则会报out of memory异常、将处理过的图片显示在界面上,并保存到本地、使用ContentProvider通过URI获取原始图片、为...
的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ...
在Android应用里,最耗费内存的...而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优化,是Android应用开发中比较重要的内容
关于android内存机制的介绍,以及bitmap的内存泄露等问题的处理方式
每个人在最初学习Android的时候肯定都会知道这么一个原因:我们编写的应用程序都是有一个最大内存限制,其中JAVA程序和C程序(NDK调用时)共享这一块内存大小,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常...
在Java中,虽然不需要程序员手动去管理对象的生命周期,但是如果希望某些对象具备一定的生命周期的话(比如内存不足时JVM就会自动回收某些对象从而避免OutOfMemory的错误)就需要用到软引用和弱引用了。...
我们得知一个应用如果使用大量图片就会导致OOM(out of memory),那该如何处理才能近可能的降低oom发生的概率呢?之前我们一直在使用SoftReference软引用,SoftReference是一种现在已经不再推荐使用的方式,因为从 ...
需求:从本地相册找图片,或通过调用系统相机拍照得到图片。 容易出错的地方: 1、当我们指定了照片的uri路径,我们就不能通过data.getData();...就容易出现 out of memory(oom)错误,我们需要先把URI转换
大家应该知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常。我们可以通过下面的代码看出每个应用程序最高可用内存是多少 int maxMemory = (int) (Runtime....
//An interpolator defines the rate of change of an animation. This allows the basic animation effects (alpha, scale, translate, rotate) to be accelerated, decelerated, repeated, etc. private ...
Fixed : Issue with state changing with mouse out of bounds in TTMSFMXSlider Fixed : Issue with resizing detail view in TTMSFMXTableView v1.5.0.0 New : Components TTMSFMXGrid, TTMSFMXNavBar, ...