android 调试摄像机黑屏问题

最近在开发一个类似微信发表朋友圈的功能,其中有个拍摄短视频的功能,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,坑了我两天,尴尬啊!

基本上如果你想让你的TextureView进行硬件加速,你必须保证硬件加速在TextureView的上下文的一些级别上是可用的,硬件加速事实上使用TextureView进行托管:TextureView 仅仅可以在被硬件加速的窗口去使用. 在软件中渲染时, TextureView什么也不会做。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值