android4.0 开启硬件加速后应用运行出错
来源:互联网 发布:软件配置文件用途 编辑:程序博客网 时间:2024/05/16 14:22
android4.0 开启硬件加速后应用运行出错
目录(?)[+]
Android4.0 开启硬件加速后部分应用运行出错。
出现异常:
12-20 15:18:19.543: E/AndroidRuntime(26301): FATAL EXCEPTION: main
12-20 15:18:19.543: E/AndroidRuntime(26301): java.lang.UnsupportedOperationException
12-20 15:18:19.543: E/AndroidRuntime(26301): at android.view.GLES20Canvas.clipPath(GLES20Canvas.java:429)
12-20 15:18:19.543: E/AndroidRuntime(26301): at cn.hpc.ui.MyView.drawArea(MyView.java:66)
关闭硬件加速则运行正常。
原因在这里
http://developer.android.com/guide/topics/graphics/hardware-accel.html
Hardware Acceleration
Beginning in Android 3.0 (API level 11), the Android 2D rendering pipeline is designed to better support hardware acceleration.
从Android 3.0(API Level 11)开始,Android的2D渲染管线可以更好的支持硬件加速。硬件加速使用GPU进行View上的绘制操作。
... ...
Unsupported Drawing Operations
不支持的绘图方法:- Canvas
clipPath()
clipRegion()
drawPicture()
drawTextOnPath()
drawVertices()
- Paint
setLinearText()
setMaskFilter()
setRasterizer()
- Xfermodes
AvoidXfermode
PixelXorXfermode
问题找到,
解决方法:
有4种控件硬件加速的方法。
1 Application level
In your Android manifest file, add the following attribute to the <application>
tag to enable hardware acceleration for your entire application:
在应用程序AndroidManifest.xml文件中,为application标签添加如下的属性即可为整个应用程序true开启、false关闭硬件加速
<application android:hardwareAccelerated="false" ...>
2 Activity level
<application android:hardwareAccelerated="true"> <activity ... /> <activity android:hardwareAccelerated="false" /></application>
3 Window level
If you need even more fine-grained control, you can enable hardware acceleration for a given window with the following code:
getWindow().setFlags( WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED, WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
Note: You currently cannot disable hardware acceleration at the window level.
4 View level
You can disable hardware acceleration for an individual view at runtime with the following code:
myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
- android4.0 开启硬件加速后应用运行出错
- android4.0 开启硬件加速后应用运行出错
- 在开发者选项里开启gpu渲染后,能不能关闭应用的硬件加速???
- Android4.0运行含有Toolbar的项目出错
- Android4.0硬件加速及绘制技巧
- VirtualBox中虚拟机突然出错,硬件加速无法开启
- yosemite开启HAXM硬件加速运行安卓虚拟机
- hadoop开启后用http访问出错
- DirectX 开启硬件加速
- chrome如何开启硬件加速?
- win2003开启硬件加速
- 开启与关闭硬件加速
- android模拟器开启硬件加速
- Android开启硬件加速
- css开启硬件加速
- 用CSS开启硬件加速
- 如何开启浏览器硬件加速
- 开启硬件加速的方式
- SAP HANA 字符函数(二) (SAP HANA String Functions)
- 【重庆邮电大学俱乐部】CSDN会员总结报告汇集
- OpenCV的IplImage图像格式
- ZOJ 2111 Starship Troopers(树形DP)
- 在CentOS系统上静默安装Oracle 11gR2
- android4.0 开启硬件加速后应用运行出错
- Java标识符使用规范
- Berkeley DB (BDB) C语言简单示例
- 使用Action来封装HTTP请求参数
- java计算内存
- centos svn安装及配置与使用
- 通用权限管理设计 之 数据库结构设计
- 利用Httponly提升web应用程序安全性
- OpenCV的CvArr, Mat, CvMat, IplImage, BYTE转换