iOS 11防止像Netflix一样的屏幕记录

问题描述:

我的视频在我的应用程序中播放,我不想被录制。什么Netflix应用程序做的是,他们让音频捕获,而不是屏幕录制时的视频。iOS 11防止像Netflix一样的屏幕记录

任何人都知道如何实现此功能?

+0

告诉我更多关于它的信息吗?你的问题缺乏解释。 – Xeieshan

+0

我只是简单地不希望新的iOS功能SCREEN RECORD在我的应用程序正在播放视频时录制视频.Netflix让我们在应用程序中录制视频,但只要您播放任何电影,他们只允许录制音频和视频,视频播放前的最后一个捕捉视频帧 – Shuja

您可以收听UIScreenCapturedDidChange通知。

NotificationCenter.default.addObserver(self, selector: #selector(screenCaptureChanged), name: NSNotification.Name.UIScreenCapturedDidChange, object: nil) 

这是在iOS 11屏幕录制开始和结束时调用的。当用户正在录制屏幕时,您可以修改UI以阻止任何您不想录制的内容。

此通知在UIScreenisCaptured属性发生变化时触发。您也可以自己检查此属性:

UIScreen.main.isCaptured 

我创建了一个黑色视图并将其添加到UIWindow的顶部。然后,在图PlayerVideo的控制器,创建观察者

NotificationCenter.default.addObserver(self, selector: #selector(screenCaptureChanged), name: NSNotification.Name.UIScreenCapturedDidChange, object: nil)

然后,在screenCaptureChanged

(void) screenCaptureChanged { 
if (@available(iOS 11.0, *)) { 
    BOOL isCaptured = [[UIScreen mainScreen] isCaptured]; 

    if (isCaptured) { 
     self.blackView.hidden = false; 
    } 
    else { 
     self.blackView.hidden = true; 
    } 
} 

}

当用户正在记录该溶液将阻止PlayerVideo。不过,我想创建一些类似Netflix的东西。我想让用户在看电影时做任何他们想做的事。如果他们正在录制,他们可以继续观看视频而不会显示黑色视图但是,当他们停止录制时,视频将以黑色视图保存。我仍然在想出Netflix如何做到这一点。