Защита Uiwindow от Screen Recording/ Screeenshot, не блокируя пользователяIOS

Программируем под IOS
Anonymous
Защита Uiwindow от Screen Recording/ Screeenshot, не блокируя пользователя

Сообщение Anonymous »

Я пытаюсь реализовать функцию на Uiwindow , которая может отображать ошибку на выходе экрана/рекоррекции Screencrocroving, не блокируя пользователей для использования приложения во время записи. Используя код ниже, я могу получить желаемую функциональность. < /p>
Но этот код имеет потенциальную проблему сбоя, поскольку его формы циклическая ссылка. < /p>

Код: Выделить всё

extension UIWindow {

func makeSecure() {
let field = UITextField()
field.tag = secureTextFieldTag
field.isSecureTextEntry = true

self.addSubview(field)
field.translatesAutoresizingMaskIntoConstraints = false
field.centerYAnchor.constraint(equalTo: self.centerYAnchor).isActive = true
field.centerXAnchor.constraint(equalTo: self.centerXAnchor).isActive = true
field.layer.name = "secureTextFieldLayer"
self.layer.name = "mainWindowLayer"

// This is the problem
self.layer.superlayer?.addSublayer(field.layer)
field.layer.sublayers?.last?.addSublayer(self.layer)
}

}
< /code>
Как это исправить, я не хочу скрывать и показывать представление при записи экрана! который может блокировать пользователь для использования приложения 
[b] Другая проблема: [/b]
Если я попытаюсь удалить uitextfield 
во время выполнения, чтобы сделать окно незащищенным, он полностью удаляет слой окна, а черный экран.

Подробнее здесь: https://stackoverflow.com/questions/796 ... cking-user

Вернуться в «IOS»