Replaykit生成日志"操作无法完成。 (com.apple.ReplayKit.RPRecordingErrorDomain error -5803。)"开始录音

时间:2017-04-18 09:02:53

标签: ios swift replaykit

 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 error -5803。)"

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

1 个答案:

答案 0 :(得分:0)

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

这篇文章:https://stackoverflow.com/a/33627512/4063602

提到:

  

显然ReplayKit需要A7或A8处理器

要查看您是否可以在设备上使用ReplayKit,可以使用isAvailable上的属性RPScreenRecorder。正如the documentation中所述:

  

设置为true时,屏幕录像机可用于录制。由于硬件不受支持,用户的设备通过Airplay或TVOut会话或使用录像机的其他应用程序显示信息,因此屏幕录制不可用。

希望这有帮助。