当应用程序置于后台时,如何保持闪光灯代码运行?

问题描述

Button(action: {
    dispatchQueue.global(qos: .userInteractive).async {
        self.lightOn.toggle()
        
        let cam = AVCaptureDevice.default(.builtInWideAngleCamera,for: .video,position: .back)
        
        try? cam?.lockForConfiguration()
        
        if (cam?.torchMode == AVCaptureDevice.TorchMode.on) {
            cam?.torchMode = AVCaptureDevice.TorchMode.off
        }
        else if value == 0.0 {
            do {
                try cam?.setTorchModeOn(level: 0.05)
            }
            catch {
                print(error)
            }
        }
        else  {
            do {
                try cam?.setTorchModeOn(level: value)
            }
            catch {
                print(error)
            }
        }
        
        cam?.unlockForConfiguration()
    }
})

我尝试过 gos:.userInteractiveuserInitiatedutilitiesbackground,但似乎没有用。谁能告诉我出了什么问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)