iosuiwindowuiscreen

How to disable screen Recording in iOS app


Is there any way to disable the screen recording? or is is possible through a configuration profile? or any third party library is available?


Solution

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

    And create a view inside main view and prevent like that.

    (void) preventScreenRecording {
    if (@available(iOS 11.0, *)) {
        BOOL isCaptured = [[UIScreen mainScreen] isCaptured];
    
        if (isCaptured) {
            self.blockView.hidden = false;
        }
        else {
            self.blockView.hidden = true;
        }
    }