Ios ReplayKit在重复进入后台后停止缓冲

Ios ReplayKit在重复进入后台后停止缓冲,ios,swift,replaykit,Ios,Swift,Replaykit,我正在尝试使用ReplayKit在我的应用程序中创建一个实时广播。 基本上,我想分享我的屏幕,并看到其他用户的屏幕 要获取缓冲区,ReplayKit提供了下一个函数: func startCapture(handler captureHandler: ((CMSampleBuffer, RPSampleBufferType, Error?) -> Void)?, completionHandler: ((Error?) -> Void)? = nil) 这是我启动ReplayKit

我正在尝试使用ReplayKit在我的应用程序中创建一个实时广播。 基本上,我想分享我的屏幕,并看到其他用户的屏幕

要获取缓冲区,ReplayKit提供了下一个函数:

func startCapture(handler captureHandler: ((CMSampleBuffer, RPSampleBufferType, Error?) -> Void)?, completionHandler: ((Error?) -> Void)? = nil)
这是我启动ReplayKit并获取缓冲区的方法:

private func startRecording() {
    RPScreenRecorder.shared().startCapture(handler: { (sampleBuffer, bufferType, error) in
        switch bufferType {

        case RPSampleBufferType.video:
            // Handle buffer and send it to server
            break

        case RPSampleBufferType.audioApp:
            break
        case RPSampleBufferType.audioMic:
            break
        }

    }, completionHandler: nil)
}
这很好,但我面临下一个问题;如果屏幕不断变化,比如闪烁的按钮,当我将应用程序发送到后台并返回几次时,它将停止调用其捕获处理程序

可能问题在于功能
startCapture
用于在有限的时间内录制屏幕,而不是用于实况广播

有一个闪烁的按钮,显示我的问题;ReplayKit正常运行,直到重复进入后台;然后它停止运行,使它再次工作的唯一方法是重新启动设备