当应用程序处于 onStop 状态时尝试录制视频时,CameraDevice.StateCallback 获取 onError(值 3)

Posted

技术标签:

【中文标题】当应用程序处于 onStop 状态时尝试录制视频时,CameraDevice.StateCallback 获取 onError(值 3)【英文标题】:CameraDevice.StateCallback getting onError (value 3) when trying to record video when application is onStop state 【发布时间】:2021-06-26 18:14:59 【问题描述】:

我正在创建一个应用程序(使用 camera2 api),当应用程序在后台(onStop 状态)时录制长视频,起初它工作正常,但过了一段时间(大约 10 分钟),相机冻结并出现 onError错误值为 3 的回调。当应用程序不在后台时,它工作得很好。 知道如何解决吗?

【问题讨论】:

【参考方案1】:

错误值 3 是 ERROR_CAMERA_DISABLED。

最新版本的 android 不允许在后台访问相机。 当您的应用进入后台时,在强制执行之前会有短暂的延迟,但最终您会断开连接并收到该错误代码。

要保持相机打开,您需要foreground service at the minimum,这意味着您必须为您的服务运行通知,以通知用户您的应用正在积极执行某项操作。

【讨论】:

以上是关于当应用程序处于 onStop 状态时尝试录制视频时,CameraDevice.StateCallback 获取 onError(值 3)的主要内容,如果未能解决你的问题,请参考以下文章

设备锁定时如何继续录制视频?

在 iOS 应用程序处于后台时上传视频文件?

iOS 11 屏幕录制禁用视频录制

视频仅在第一次尝试时不录制音频

当视频视图处于全屏状态时,RecyclerView 被重新创建

当 iphone 处于睡眠模式/锁定时,如何使用视频播放?