最近在开发一个类似微信发表朋友圈的功能,其中有个拍摄短视频的功能,DEMO上运行没有问题,但是写进项目一调用摄像机就黑屏,其他的UI图确显示出来了,很让人奇怪。后来调试才发现报了一个这样的错误,A TextureView or a subclass can only be used with hardware acceleration enabled.(华为测试机是真坑,报错一开始没有日志,这个问题我在别一篇文章中写过了,这里就不多说了)。
先说下解决方案吧:
在 application级别修改:
<application android:hardwareAccelerated="true"
...>
复制代码
在 activity 级别修改:
<activity android:hardwareAccelerated="true"
/>
复制代码
在 window 级别修改:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
复制代码
我是因为这项目刚接手,前辈就是在application里面给设置成了false,坑了我两天,尴尬啊!