Android:onPreviewFrame从未在没有SurfaceView的情况下调用

Dom*_*icM 10 camera android preview surfaceview

在某些设备上,onPreviewFrame如果没有SurfaceView设置显示相机预览,则不会调用.但是,我在服务中处理相机,所以我无法设置,SurfaceView但我不想有任何可见的预览.

如何才能做到这一点?我可以以编程方式创建SurfaceView并设置它Camera::setPreviewDisplay吗?

这一定是否可能?

它适用于几乎所有手机,SurfaceView但没有HTC One X和谷歌Nexus One ......

yig*_*git 4

根据这个问题,创建一个SurfaceView代码工作正常。虽然我不认为你可以通过服务来创建它。

SurfaceView另一种方法是在 a 内创建一个 1px-1px 的区域RelativeLayout,并将其隐藏在其顶部的其他视图中。(可见度应该仍然是VISIBLE)。我们将这个技巧用于路径相机 UI,通过 OpenGL 渲染预览缓冲区,效果很好。