【问题标题】:How to Use Camera and SurfaceView in Background如何在后台使用 Camera 和 SurfaceView
【发布时间】:2012-09-11 15:04:20
【问题描述】:

我目前在我的应用程序中使用相机和表面视图来使用 Torch 等...,我在 Activity 中使用这些, 如何在后台使用 Camera 和 SurfaceView,例如。 : 我想保持 Torch/Led Flash On ,我看到很多 Widget 在后台运行良好,他们是怎么做到的?

谢谢。

【问题讨论】:

  • 感谢您的回答,但这种方式不起作用,我无法在没有 SurfaceView 的情况下使用相机,使用 ICS ...
  • 我并不特别了解 ICS,但我知道我已经通过将视图的大小设置为 0 宽度和 0 高度来让相机在后台工作。你也需要一个 SurfaceView 来连接相机,但你可以让它不可见。
  • 是的,但是我如何从后台使用 SurfaceView,例如:使用服务,没有视图...
  • 你说它是一个小部件,这意味着它不在后台。这是主屏幕上的前台应用程序。

标签: android camera surfaceview


【解决方案1】:

看这里:

http://developer.android.com/guide/topics/media/camera.html

您需要创建一个显示相机预览的活动的所有代码。 作为相机 API:

http://developer.android.com/reference/android/hardware/Camera.html#setPreviewDisplay%28android.view.SurfaceHolder%29

指定...您需要使用 SurfaceHolder 进行预览。因此,您只能使用 SurfaceView 或派生类进行自动预览。否则,您可以使用例如 TextureView 或 ImageView 自己绘制预览。您需要实现 onFramePreview 方法以从预览中获取帧并自行处理它们。通过使用 OpenGL 或 ANI API,您还可以为帧添加效果。据我所知,这是直接在预览中添加效果的唯一方法,除非这些效果可以通过在预览图像上方覆盖半透明彩色表面来实现。

【讨论】:

    猜你喜欢
    • 2011-08-04
    • 1970-01-01
    • 1970-01-01
    • 2011-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-28
    相关资源
    最近更新 更多