三星S3上没有TextureView表面

时间:2015-03-04 14:15:56

标签: android android-camera textureview

在Samsung S3 4.0.4上运行以下TextureView demo会在其他设备上生成黑屏,它可以正常工作。 <{1}}回调不会被调用,相机也不会被启动。

将<{1}}添加到清单中的actvity标记会产生以下错误,但onSurfaceTextureAvailable会被调用。

我做错了吗?有解决方法吗?

堆栈跟踪

android:hardwareAccelerated="true"

代码段

onSurfaceTextureAvailable

2 个答案:

答案 0 :(得分:1)

TextureView必须进行硬件加速。抛出异常是因为我在AndroidManifest.xml中缺少<uses-feature android:name="android.hardware.camera" />。问题是,默认情况下应该在4.0.4上启用硬件加速。

答案 1 :(得分:0)

问题与TextureView无关。 java.lang.RuntimeException:无法连接到摄像头服务。当另一个应用程序正在使用相机时,或者您在代码中先前调用Camera.open()并忘记释放它时,会引发此异常。

您应该在onResume中打开相机并在onPauseonStart/onStop中发布。