# Consentimiento del usuario

El SDK de Wortise incluye soporte para el gestor de consentimiento (también llamado **Consent Manager** o **CMP**) de Google Ads para solicitar el consentimiento de cada usuario.

Obtener el consentimiento del usuario es importante para cumplir con las políticas de privacidad y optar a mayores CPM.

## Solicitar consentimiento

Para solicitar el consentimiento del usuario, es necesario llamar al método `ConsentManager.requestIfRequired` en un momento apropiado de la app. Esto mostrará un diálogo, solamente cuando sea totalmente necesario (normalmente en el primer arranque de la app), para que el usuario otorgue o deniegue su consentimiento.

También está disponible el método `ConsentManager.request` si se desea mostrar el diálogo siempre, y no exclusivamente cuando resulte necesario (por ejemplo, para ofrecer una opción en la pantalla de ajustes de la app que permita al usuario cambiar su consentimiento en cualquier momento).

### Ejemplo

{% tabs %}
{% tab title="Kotlin" %}

```kotlin
// Ejemplo con WortiseSdk.initialize
WortiseSdk.initialize(this, "tu app key") {
    ConsentManager.requestIfRequired(this);
}

// Ejemplo con WortiseSdk.wait
WortiseSdk.wait {
    ConsentManager.requestIfRequired(this);
}
```

{% endtab %}

{% tab title="Java" %}

```java
// Ejemplo con WortiseSdk.initialize
WortiseSdk.initialize(this, "tu app key", () -> {
    ConsentManager.requestIfRequired(this);
    return Unit.INSTANCE;
});

// Ejemplo con WortiseSdk.wait
WortiseSdk.wait(() -> {
    ConsentManager.requestIfRequired(this);
    return Unit.INSTANCE;
});
```

{% endtab %}
{% endtabs %}

### Configuración de listener

Es posible pasar un listener, tanto a `request` como `requestIfRequired`, para conocer cuando la solicitud de consentimiento ha finalizado (y si la solicitud ha sido mostrada). Para ello, simplemente es necesario pasar un listener como último parámetro de ambos métodos:

{% tabs %}
{% tab title="Kotlin" %}

```kotlin
ConsentManager.requestIfRequired(this) { shown ->
    // Este listener será invocado cuando la solicitud finalice 
}
```

{% endtab %}

{% tab title="Java" %}

```java
ConsentManager.requestIfRequired(this, (shown) -> {
    // Este listener será invocado cuando la solicitud finalice 
    return Unit.INSTANCE;
});
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.wortise.com/android-sdk/consentimiento-del-usuario.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
