正如您所注意到的,当我们最小化它时,Android手机中的摄像头停止工作(例如,当我们启动一个新的应用程序时)。我的问题是:有没有办法用Android相机创建一个应用程序,即使我们最小化它也可以录制,因此当我们在手机上做一些不同的事情时它可以录制视频?或者可能只有我们在不使用MediaStore的情况下创建这样的相机?如果您分享一些可能对我有帮助的链接或代码,我将不胜感激。提前谢谢。
答案 0 :(得分:1)
我认为答案是必须使用
public final void setPreviewTexture (SurfaceTexture surfaceTexture)
Added in API level 11
Sets the SurfaceTexture to be used for live preview.
Either a surface or surface texture is necessary for preview,
and preview is necessary to take pictures.
来自https://developer.android.com/reference/android/hardware/Camera.html的。和 来自https://developer.android.com/reference/android/graphics/SurfaceTexture.html:
The image stream may come from either camera preview or video decode.
A SurfaceTexture may be used in place of a SurfaceHolder when specifying the
output destination of a Camera or MediaPlayer object. Doing so will cause all the
frames from the image stream to be sent to the SurfaceTexture object rather than
to the device's display.
我真的很想试试这个,然后给你发一些代码,但是我没有比姜饼更新的电话,这是用蜂窝引入的。
使用与活动相关联的surface
,当活动最小化时,surfaceDestroyed
和onPause
之间的某个时间会调用onStop
,但奇怪的是,不是在电话上正在睡觉:How SurfaceHolder callbacks are related to Activity lifecycle?但我希望surfaceTexture
不会以这种方式被摧毁。