【Android开发经验】Cannot generate texture from bitmap异常的解决方式
异常现象:
今天在处理用户头像的过程中,由于头像的处理比較复杂,由于,没有使用afinal自带的自己主动载入。而是自己依据头像的下载路径。手动进行下载和使用。可是在手动回收bitmap对象的过程中,会出现Cannot generate texture from bitmap异常的情况,同一时候,ImageView显示是黑色的,图像不能正常显示。
解决方式:
在查阅了一些其它人的资料之后,发现这可能是因为4.0之后系统开启了GPU硬件加速导致的。因此,我们能够在图片载入之前,设置ImageView为关闭硬件加速状态。因此,我们能够用以下的代码完毕。
if (SystemUtils.getSystemVersion() >= SystemUtils.V4_0) {
img_header.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
之所以要加上版本号控制。是由于设置图片的非硬件加速模式是在api11之后加入的,因此,我们须要进行版本号的控制,否则。在低版本号上执行会报错。
以下是检測版本号的帮助类SystemUtils.java
/**
*
* @ClassName: com.drd.piaojubao.utils.SystemUtils
* @Description: 当前平台系统的工具类
* @author zhaokaiqiang
* @date 2014-10-11 上午9:51:47
*
*/
public class SystemUtils { public static final int V2_2 = 8;
public static final int V2_3 = 9;
public static final int V2_3_3 = 10;
public static final int V3_0 = 11;
public static final int V3_1 = 12;
public static final int V3_2 = 13;
public static final int V4_0 = 14;
public static final int V4_0_3 = 15;
public static final int V4_1 = 16;
public static final int V4_2 = 17;
public static final int V4_3 = 18;
public static final int V4_4 = 19; /**
*
* @Description: 检測当前的版本号信息
* @param
* @return int
* @throws
*/
public static int getSystemVersion() {
return android.os.Build.VERSION.SDK_INT;
} }
【Android开发经验】Cannot generate texture from bitmap异常的解决方式的更多相关文章
- 连接db2数据库时NumberFormatException异常的解决方式
连接db2数据库时报异常:java.lang.NumberFormatException: For input string: "A" from a DB2 JDBC(JCC) j ...
- Hadoop常见异常及其解决方式
1.Shell$ExitCodeException 现象:执行hadoop job时出现例如以下异常: 14/07/09 14:42:50 INFO mapreduce.Job: Task Id : ...
- android EditText 限定中文个数与英文个数的解决方式
EditText 限定中文8个英文16个的解决方法. 在EditText上控件提供的属性中有限定最大最小长度的方法. 可是,对于输入时,限定中文8个英文16个时,怎么办?相当于一个中文的长度是两个英文 ...
- dubbo常见异常及解决方式
1.出现RpcException: Failed to invoke the method post in the service com.xxx.xxx.xxx异常怎么办?表示调用失败1.检查网络是 ...
- celery出现警告或异常的解决方式
做个笔记,记录下使用celery踩过的坑,不定期更新. warnings.warn(CDeprecationWarning(W_PICKLE_DEPRECATED)) 我用的是Flask,所以在Fl ...
- Android Studio 错误: 非法字符: '\ufeff' 解决方式|错误: 须要class, interface或enum
在导入eclipse项目到Android Studio出现这种错误, 非法字符: '\ufeff' 解决方式|错误: 须要class, interface或enum.查阅后了解到Eclipse能够智能 ...
- android通过BitmapFactory.decodeFile获取图片bitmap报内存溢出的解决办法
android通过BitmapFactory.decodeFile获取图片bitmap报内存溢出的解决办法 原方法: public static Bitmap getSmallBitmap(Strin ...
- 【我的Android进阶之旅】 RxJava 理解Backpressure并解决异常 rx.exceptions.MissingBackpressureException
今天测试人员在测试应用APP的时候应用crash了,查看了下crash log如下所示: java.lang.IllegalStateException: Exception thrown on Sc ...
- Android开发之高效加载Bitmap
一.概述 在Android开发中,我们经常与Bitmap打交道,而对Bitmap的不恰当的操作经常会导致OOM(Out of Memory).这篇文章我们会介绍如何高效地在Android开发中使用Bi ...
随机推荐
- docker 图解学习
http://www.cnblogs.com/bethal/tag/docker/
- INTEL SSD SMART 性能 E8 E9 转
如题今天研究了一下怎么看Intel SSD Toolbox里边显示的Smart信息.首先说,查看Intel SSD smart信息最好最方便的当然就是自家的工具箱,用其他工具查看不是不可以,但是很多数 ...
- QT 安装 4.8.7 on solaris 10
1. 下载 QT 4.8.7: http://download.qt.io/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4 ...
- 在EntityFramework6中管理DbContext的正确方式——3环境上下文DbContext vs 显式DbContext vs 注入DbContext(外文翻译)
(译者注:使用EF开发应用程序的一个难点就在于对其DbContext的生命周期管理,你的管理策略是否能很好的支持上层服务 使用独立事务,使用嵌套事务,并行执行,异步执行等需求? Mehdi El Gu ...
- Log4j输出格式控制
参数说明例子 %c 列出logger名字空间的全称,如果加上{<层数>}表示列出从最内层算起的指定层数的名字空间 log4j配置文件参数举例 输出显示媒介 假设当前logger名字空间是& ...
- 安卓下查看kmsg内核日志
cat /proc/kmsg <6>[ 2601.360] c0@A7 lm3695_early_suspend 247<6>[ 2601.380] c1@A7 gp2ap_e ...
- u-boot支持yaffs映像烧写的补丁
u-boot的nand flash驱动有两个版本,似乎是以u-boot1..5为分界点的,之前的版本使用的是自己写的nand flash驱动,而后面的版本使用的是linux内核中nand flash的 ...
- MySQL语法大全
select * from emp; #注释 #--------------------------- #----命令行连接MySql--------- #启动mysql服务器 net start m ...
- 如何查看ETW Trace?
三种方法: LogParser Tractrpt - C:\Windows\System32 SvcTraceViewer.exe 后面的链接中有使用的详细步骤. 参考资料 ========= ...
- jQuery调用WCF需要注意的一些问题
昨天,博客园首页增加了Digg功能.在该功能中我们开始尝试使用jQuery直接调用WCF.之前我们采用的方案是jQuery调用Web Service,然后WebService再调用服务层.这样调用主要 ...