如何防止ios11中的屏幕记录

时间:2017-07-30 16:16:30

标签: ios screen ios11 replaykit

由于某些原因,我们的APP不希望人们记录屏幕,但在ios11中,一个新功能可以让用户在那里录制iphone屏幕,所以是否有API或通知指示我用户正在录制 非常感谢你

2 个答案:

答案 0 :(得分:6)

您可以使用以下方法检测屏幕是否正在录制:

UIScreen.main.isCaptured
// True if this screen is being captured (e.g. recorded, AirPlayed, mirrored, etc.)

您无法使用项目设置阻止它,但您可以使用模式或其他内容来请求用户禁用它。不确定如何使用您的AppStore提交进行锻炼。

答案 1 :(得分:-1)

你可以在iOS 11中使用kvo观察UIScreenCapturedDidChangeNotification,就像这样

NSOperationQueue *mainQueue = [NSOperationQueue mainQueue];
    [[NSNotificationCenter defaultCenter] addObserverForName:UIScreenCapturedDidChangeNotification object:nil queue:mainQueue usingBlock:^(NSNotification * _Nonnull note) { 
 //code you want execute
}];