HarmonyOS 相机后台切前台没有收到回调?

通过cameraManager注册相机状态回调函数,相机状态由后台切为前台时没有收到回调处理。

阅读 601
1 个回答

应用被切换到后台后,相机资源会被全部回收,所以为了避免出现前后台切换后预览流黑屏的问题,建议在onPageShow中进行重新创建会话、配置会话、启动等操作,并在onPageHide中对相机资源进行销毁。

/**
 * 自定义拍照
 */
@Entry
@Component
struct CameraDemoPage {
  async onPageShow() {
    let baseContext = getContext() as common.BaseContext;
    await this.initCamera(baseContext, this.surfaceId);
  }
  async onPageHide() {
    await this.releaseCamera();
  }
}