我的应用程序使用硬件加速不支持的画布方法(clippath、drawpicture),因此我不启用硬件加速。但是,我开始得到崩溃报告,但有一些例外,比如:android.view.GLES20Canvas.drawPicture(GLES20Canvas.java:895)
。
在调查这一点时,似乎有些设备可以在设置中强制硬件加速:“强制GPU渲染,在应用程序中使用二维硬件加速”。
因此,我将<application android:hardwareAccelerated="false">
添加到manifest.xml中,但在选中“force gpu rendering”设置时仍然会发生崩溃。
那么,有没有办法防止我的应用程序被迫使用硬件加速?
最佳答案
对于使用这些操作的视图,在the dev guide中使用'view level'选项时禁用它-我希望其他选项将因应用程序上强制设置的方式而失效。
myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
否则,该链接将描述如何检测硬件加速,并对此进行投诉。
如果视图附加到硬件加速窗口,则view.is hardware accelerated()返回true。
canvas.is hardware accelerated()如果画布是硬件加速的,则返回true
关于android - Android:应用程序被迫使用硬件加速吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9521506/