func startRecording() {
    let recorder = RPScreenRecorder.shared()
    recorder.startRecording(withMicrophoneEnabled: false, handler: { (error) in
        if let unwrappedError = error {
            print(unwrappedError.localizedDescription)
        } else {
            self.videoRecButton.addTarget(self, action:#selector(self.stopRecording), for: .touchUpInside)
        }
    })

}

func stopRecording() {
    let recorder = RPScreenRecorder.shared()
    recorder.stopRecording { [unowned self] (preview, error) in self.navigationItem.rightBarButtonItem =    UIBarButtonItem(title: "Start", style: .plain, target: self, action: #selector(self.startRecording))
        if let unwrappedPreview = preview {
            unwrappedPreview.previewControllerDelegate = self
            self.present(unwrappedPreview, animated: true)
        }
    }
}

在recorder.startRecording()和recorder.stopRecording()上,它会生成错误,因为“操作无法完成。(com.apple.ReplayKit.RPRecordingErrorDomain错误-5803。)”

我也没有获得权限弹出窗口。

最佳答案

错误代码-5803表示RPRecordingErrorFailedToStart(所有错误代码都可以在here中找到)

此帖:https://stackoverflow.com/a/33627512/4063602

提到:

显然ReplayKit需要A7或A8处理器

要查看是否能够在设备上使用ReplayKit,可以在isAvailable上使用属性RPScreenRecorder。就像the documentation中所说的:

设置为true时,可以使用屏幕录像机进行录制。由于硬件不受支持,用户的设备通过Airplay或通过TVOut session 显示信息或使用记录器的其他应用,因此无法进行屏幕录像。

希望这可以帮助。

关于ios - Replaykit生成日志“操作无法完成。 (com.apple.ReplayKit.RPRecordingErrorDomain错误-5803。)”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43467894/

10-12 01:52