-
-
Save ashishkakkad8/747223d68f3675dce4f05e4396baec7e to your computer and use it in GitHub Desktop.
extension UIView { | |
func preventScreenshot() { | |
DispatchQueue.main.async { | |
let field = UITextField() | |
field.isSecureTextEntry = true | |
self.addSubview(field) | |
field.centerYAnchor.constraint(equalTo: self.centerYAnchor).isActive = true | |
field.centerXAnchor.constraint(equalTo: self.centerXAnchor).isActive = true | |
self.layer.superlayer?.addSublayer(field.layer) | |
field.layer.sublayers?.first?.addSublayer(self.layer) | |
} | |
} | |
} |
This no longer works in iOS17 (beta at least).
Yes. I have also tested. Specifically above code is not working in iOS 17. I am also looking into it.
Meanwhile you can check following gist and screenshot prevention, which is totally working fine in iOS 17 too.
https://gist.github.com/ashishkakkad8/695e0b1828f699ed538bcf1a01920cc7
Thanks for the new example. I will check it out.
Still curious what's the big difference here, but thanks again for looking into it!
any solution for ios 17?
@ashishkakkad8 Did you find any solution?
@awnigharbia As I have written above. I have already tested the https://gist.github.com/ashishkakkad8/695e0b1828f699ed538bcf1a01920cc7 code and it was working fine in iOS 17 beta. I didn't get time to check in latest versions. Once I get time sure I will check. Thanks :)
Thanks I managed to solve it.
It's in iOS native code. So, I guess you have to do bridge for this.