我的应用程序使用硬件加速不支持的画布方法(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/

10-10 14:16