Eventos personalizados de Sibbo
El CMP lanza un evento personalizado para detectar lo siguiente:
El CMP se ha cerrado. (evento 'sibbo-close')
- @objc func close(_ sender: Any) {
- webView.evaluateJavaScript("SibboCMP.close()", completionHandler: nil)
- }
El cierre de la herramienta de consentimiento se maneja a través de un mensaje que se envía desde el JavaScript de la página web. Cuando se recibe este mensaje, se llama a la función consentToolHasClosed().
- let action = JSON(body)["action"]
- if action == "close" {
- consentToolHasClosed()
- }
Finalmente, la función consentToolHasClosed() cierra la vista. Esto se hace llamando a la función dismiss(animated:completion:) en el controlador de vista.
swift
- func consentToolHasClosed() {
- dismiss(animated: true, completion: nil)
- }
En resumen, el proceso de cierre de la vista comienza cuando se cierra el CMP. Esto desencadena una llamada a una función de JavaScript que envía un mensaje a través del webView. Cuando se recibe este mensaje, se llama a una función que cierra la vista.