Tarjetas de contenido
Obtén información sobre las tarjetas de contenido para el SDK de Braze, incluidos los diferentes modelos de datos y las propiedades específicas de las tarjetas disponibles para tu aplicación.
¿Utilizar tarjetas de contenido para mensajes tipo banner? Prueba los banners:perfectos para mensajes en línea, persistentes dentro de la aplicación y en la Web.
Esta guía utiliza ejemplos de código del SDK Web de Braze 4.0.0+. Para actualizar a la última versión del SDK Web, consulta la Guía de actualización del SDK.
Requisitos previos
Antes de poder utilizar las Tarjetas de contenido, tendrás que integrar el SDK Web de Braze en tu aplicación. Sin embargo, no es necesaria ninguna configuración adicional. Para crear tu propia interfaz de usuario, consulta la Guía de personalización de tarjetas de contenido.
IU estándar de la fuente
Para utilizar la interfaz de usuario de las Tarjetas de contenido incluida, tendrás que especificar dónde mostrar la fuente en tu sitio web.
En este ejemplo, tenemos un <div id="feed"></div> en el que queremos colocar la fuente de Tarjetas de contenido. Utilizaremos tres botones para ocultar, mostrar o alternar (ocultar o mostrar en función de su estado actual) la fuente.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<button id="toggle" type="button">Toggle Cards Feed</button>
<button id="hide" type="button">Hide Cards Feed</button>
<button id="show" type="button">Show Cards Feed</button>
<nav>
<h1>Your Personalized Feed</h1>
<div id="feed"></div>
</nav>
<script>
const toggle = document.getElementById("toggle");
const hide = document.getElementById("hide");
const show = document.getElementById("show");
const feed = document.getElementById("feed");
toggle.onclick = function(){
braze.toggleContentCards(feed);
}
hide.onclick = function(){
braze.hideContentCards();
}
show.onclick = function(){
braze.showContentCards(feed);
}
</script>
Al utilizar los métodos toggleContentCards(parentNode, filterFunction) y showContentCards(parentNode, filterFunction), si no se proporcionan argumentos, todas las Tarjetas de contenido se mostrarán en una barra lateral de posición fija en la parte derecha de la página. De lo contrario, la fuente se colocará en la opción parentNode especificada.
| Parámetros | Descripción |
|---|---|
parentNode |
El nodo HTML en el que se renderizarán las Tarjetas de contenido. Si el nodo padre ya tiene una vista de Tarjetas de contenido de Braze como descendiente directo, se sustituirán las Tarjetas de contenido existentes. Por ejemplo, debes pasar document.querySelector(".my-container"). |
filterFunction |
Una función para filtrar u ordenar las tarjetas mostradas en esta vista. Se invoca con la matriz de objetos Card, ordenados por {pinned, date}. Se espera que devuelva una matriz de objetos Card ordenados para renderizar para este usuario. Si se omite, se mostrarán todas las tarjetas. |
Consulta la documentación de referencia del SDK para obtener más información sobre cómo alternar las Tarjetas de contenido.
Probar Tarjetas de contenido en la web
Puedes probar tu integración de Tarjetas de contenido utilizando las herramientas de desarrollador de tu navegador.
- Crea una campaña de tarjeta de contenido y dirígela a tu usuario de prueba.
- Inicia sesión en el sitio web que tiene tu integración del SDK Web.
- Abre la consola de tu navegador. En Chrome, haz clic derecho en la página, selecciona Inspeccionar y luego selecciona la pestaña Consola.
- Ejecuta estos comandos en la consola:
window.braze.getCachedContentCards()window.braze.toggleContentCards()
Tipos de tarjeta y propiedades
El modelo de datos de las Tarjetas de contenido está disponible en el SDK Web y ofrece los siguientes tipos de tarjetas de contenido: ImageOnly, CaptionedImage y ClassicCard. Cada tipo hereda propiedades comunes de un modelo base Card y tiene las siguientes propiedades adicionales.
Para registrar los datos de las Tarjetas de contenido, consulta Registrar análisis.
Modelo de tarjeta base
Todas las Tarjetas de contenido tienen estas propiedades compartidas:
| Propiedad | Descripción |
|---|---|
expiresAt |
La marca de tiempo UNIX de la fecha de caducidad de la tarjeta. |
extras |
(Opcional) Datos de par clave-valor formateados como un objeto de cadena con una cadena de valor. |
id |
(Opcional) El ID de la tarjeta. Esto se comunicará a Braze con eventos para fines de análisis. |
pinned |
Esta propiedad refleja si la tarjeta se configuró como “anclada” en el dashboard. |
updated |
La marca de tiempo UNIX de la última vez que se modificó esta tarjeta. |
viewed |
Esta propiedad refleja si el usuario ha visto la tarjeta o no. |
isControl |
Esta propiedad es true cuando una tarjeta es un grupo de “control” dentro de una prueba A/B. |
Solo imagen
Las tarjetas ImageOnly son imágenes a tamaño completo en las que se puede hacer clic.
| Propiedad | Descripción |
|---|---|
aspectRatio |
La relación de aspecto de la imagen de la tarjeta; sirve como referencia antes de que se complete la carga de la imagen. Ten en cuenta que la propiedad puede no estar disponible en determinadas circunstancias. |
categories |
Esta propiedad es puramente para la organización en tu implementación personalizada; estas categorías se pueden establecer en el compositor del dashboard. |
clicked |
Esta propiedad indica si alguna vez se ha hecho clic en esta tarjeta en este dispositivo. |
created |
La marca de tiempo UNIX de la hora de creación de la tarjeta desde Braze. |
dismissed |
Esta propiedad indica si esta tarjeta ha sido descartada. |
dismissible |
Esta propiedad refleja si el usuario puede descartar la tarjeta, retirándola de la vista. |
imageUrl |
La URL de la imagen de la tarjeta. |
linkText |
El texto para mostrar de la URL. |
url |
La URL que se abrirá al hacer clic en la tarjeta. |
Imagen subtitulada
Las tarjetas CaptionedImage son imágenes de tamaño completo en las que se puede hacer clic y que van acompañadas de un texto descriptivo.
| Propiedad | Descripción |
|---|---|
aspectRatio |
La relación de aspecto de la imagen de la tarjeta; sirve como referencia antes de que se complete la carga de la imagen. Ten en cuenta que la propiedad puede no estar disponible en determinadas circunstancias. |
categories |
Esta propiedad es puramente para la organización en tu implementación personalizada; estas categorías se pueden establecer en el compositor del dashboard. |
clicked |
Esta propiedad indica si alguna vez se ha hecho clic en esta tarjeta en este dispositivo. |
created |
La marca de tiempo UNIX de la hora de creación de la tarjeta desde Braze. |
dismissed |
Esta propiedad indica si esta tarjeta ha sido descartada. |
dismissible |
Esta propiedad refleja si el usuario puede descartar la tarjeta, retirándola de la vista. |
imageUrl |
La URL de la imagen de la tarjeta. |
linkText |
El texto para mostrar de la URL. |
title |
El texto del título de esta tarjeta. |
url |
La URL que se abrirá al hacer clic en la tarjeta. |
Clásica
El modelo ClassicCard puede contener una imagen sin texto o un texto con imagen.
| Propiedad | Descripción |
|---|---|
aspectRatio |
La relación de aspecto de la imagen de la tarjeta; sirve como referencia antes de que se complete la carga de la imagen. Ten en cuenta que la propiedad puede no estar disponible en determinadas circunstancias. |
categories |
Esta propiedad es puramente para la organización en tu implementación personalizada; estas categorías se pueden establecer en el compositor del dashboard. |
clicked |
Esta propiedad indica si alguna vez se ha hecho clic en esta tarjeta en este dispositivo. |
created |
La marca de tiempo UNIX de la hora de creación de la tarjeta desde Braze. |
description |
El texto del cuerpo de esta tarjeta. |
dismissed |
Esta propiedad indica si esta tarjeta ha sido descartada. |
dismissible |
Esta propiedad refleja si el usuario puede descartar la tarjeta, retirándola de la vista. |
imageUrl |
La URL de la imagen de la tarjeta. |
linkText |
El texto para mostrar de la URL. |
title |
El texto del título de esta tarjeta. |
url |
La URL que se abrirá al hacer clic en la tarjeta. |
Grupo de control
Si utilizas la fuente predeterminada de Tarjetas de contenido, las impresiones y los clics se rastrearán automáticamente.
Si utilizas una integración personalizada para Tarjetas de contenido, necesitas registrar las impresiones cuando se hubiera visto una tarjeta de control. Como parte de este esfuerzo, asegúrate de gestionar las tarjetas de control al registrar las impresiones en una prueba A/B. Estas tarjetas están en blanco y, aunque no las vean los usuarios, debes registrar las impresiones para comparar su rendimiento con el de las tarjetas que no son de control.
Para determinar si una tarjeta de contenido está en el grupo de control de una prueba A/B, comprueba la propiedad card.isControl (Web SDK v4.5.0+) o comprueba si la tarjeta es una instancia de ControlCard (card instanceof braze.ControlCard).
Métodos de tarjeta
Métodos de fuente predeterminada
Usa estos métodos cuando muestres Tarjetas de contenido utilizando la interfaz de usuario predeterminada de Braze:
| Método | Descripción |
|---|---|
showContentCards |
Muestra la fuente predeterminada de Tarjetas de contenido. Renderiza las tarjetas en un elemento HTML parentNode proporcionado, o como una barra lateral de posición fija en el lado derecho de la página si no se proporciona ningún elemento. Acepta una filterFunction opcional para ordenar o filtrar las tarjetas antes de mostrarlas. |
hideContentCards |
Oculta la fuente predeterminada de Tarjetas de contenido si se está mostrando actualmente. |
toggleContentCards |
Muestra la fuente predeterminada de Tarjetas de contenido si está oculta, o la oculta si está visible. Si necesitas mostrar varias fuentes de Tarjetas de contenido simultáneamente, usa showContentCards y hideContentCards en su lugar. |
Métodos de fuente personalizada
Usa estos métodos cuando construyas tu propia interfaz de usuario de Tarjetas de contenido:
| Método | Descripción |
|---|---|
subscribeToContentCardsUpdates |
Registra una función de devolución de llamada que se invoca cada vez que se actualizan las Tarjetas de contenido para el usuario actual, como al inicio de sesión. Usa esto como la forma principal de recibir datos de tarjetas para tu fuente personalizada. Debe llamarse antes de openSession() para recibir actualizaciones en la sesión inicial. |
getCachedContentCards |
Devuelve todas las tarjetas actualmente disponibles de la última actualización de Tarjetas de contenido. Usa esto para mostrar tarjetas inmediatamente al cargar la página sin esperar una nueva solicitud al servidor, como cuando el usuario vuelve a una página durante una sesión activa. |
requestContentCardsRefresh |
Solicita una actualización inmediata de Tarjetas de contenido desde los servidores de Braze. De forma predeterminada, las tarjetas se actualizan al inicio de sesión y cuando se reabre la fuente predeterminada. Usa esto para forzar una actualización en otros momentos, como después de una acción específica del usuario. Ten en cuenta los límites de velocidad. |
logContentCardImpressions |
Registra eventos de impresión para una matriz de tarjetas. Llama a esto cuando las tarjetas se renderizan y son visibles para el usuario. Es necesario para informes de campaña precisos cuando se usa una interfaz personalizada, ya que las impresiones no se rastrean automáticamente fuera de la fuente predeterminada. |
logContentCardClick |
Registra un evento de clic para una sola tarjeta. Llama a esto cuando un usuario interactúa con una tarjeta en tu interfaz personalizada. Es necesario para informes de campaña precisos, ya que los clics no se rastrean automáticamente fuera de la fuente predeterminada. |
handleBrazeAction |
Procesa la URL de una tarjeta y ejecuta la acción de clic configurada, incluyendo acciones de Braze (URLs brazeActions://) y navegación URL estándar. Llama a esto en tu controlador de clic de tarjeta para asegurar que los comportamientos de clic configurados en el dashboard de Braze se ejecuten. |
dismissCard |
Descarta una tarjeta programáticamente, eliminándola de la fuente del usuario. Usa esto para permitir que los usuarios descarten tarjetas en tu interfaz personalizada. |
Para más detalles, consulta la documentación de referencia del SDK.
Buenas prácticas
Llama a los métodos en el orden correcto
Para fuentes personalizadas, las Tarjetas de contenido solo se actualizan al inicio de sesión si subscribeToContentCardsUpdates() se llama antes de openSession(). Llama a tus métodos de Braze en este orden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import * as braze from "@braze/web-sdk";
// Step 1: Initialize the SDK
braze.initialize("YOUR-API-KEY", { baseUrl: "YOUR-SDK-ENDPOINT" });
// Step 2: Subscribe to card updates
braze.subscribeToContentCardsUpdates((updates) => {
const cards = updates.cards;
renderCards(cards);
});
// Step 3: Identify the user
braze.changeUser("USER_ID");
// Step 4: Start the session
braze.openSession();
Usa tarjetas en caché para mantener el contenido entre cargas de página
Dado que subscribeToContentCardsUpdates() solo invoca su devolución de llamada cuando hay nuevas actualizaciones (como al inicio de sesión), las tarjetas pueden desaparecer de tu fuente personalizada si un usuario actualiza la página a mitad de sesión. Para evitar esto, usa getCachedContentCards() para renderizar tarjetas inmediatamente desde la caché local, junto con tu suscripción para nuevas actualizaciones:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import * as braze from "@braze/web-sdk";
function renderCards(cards) {
const container = document.getElementById("content-cards");
container.textContent = "";
const displayedCards = [];
cards.forEach(card => {
if (card instanceof braze.ClassicCard || card instanceof braze.CaptionedImage) {
const cardElement = document.createElement("div");
const h3 = document.createElement("h3");
h3.textContent = card.title || "";
cardElement.appendChild(h3);
const p = document.createElement("p");
p.textContent = card.description || "";
cardElement.appendChild(p);
if (card.imageUrl) {
const img = document.createElement("img");
img.src = card.imageUrl;
img.alt = card.title || "";
cardElement.appendChild(img);
}
if (card.url) {
cardElement.addEventListener("click", () => {
braze.logContentCardClick(card);
braze.handleBrazeAction(card.url);
});
}
container.appendChild(cardElement);
displayedCards.push(card);
}
});
if (displayedCards.length > 0) {
braze.logContentCardImpressions(displayedCards);
}
}
// Display cached cards immediately
const cached = braze.getCachedContentCards();
if (cached && cached.cards.length > 0) {
renderCards(cached.cards);
}
// Subscribe to future updates
braze.subscribeToContentCardsUpdates((updates) => {
renderCards(updates.cards);
});
Registra análisis para fuentes personalizadas
Cuando usas una interfaz personalizada, las impresiones, los clics y los descartes no se rastrean automáticamente. Debes registrar cada evento manualmente:
- Impresiones: Llama a
logContentCardImpressions([card1, card2, ...])con una matriz de objetos de tarjeta cuando las tarjetas sean visibles para el usuario. - Clics: Llama a
logContentCardClick(card)cuando un usuario interactúe con una tarjeta. - Comportamiento de clic: Llama a
handleBrazeAction(card.url)para ejecutar la acción de clic configurada de la tarjeta (como navegar a una URL o registrar un evento personalizado).
El argumento pasado a logContentCardClick() debe ser un objeto Card original de Braze. Si transformas o reconstruyes los datos de la tarjeta (por ejemplo, serializando y deserializando), los clics no se registran y verás el error: “card must be a Card object.”
Uso de Google Tag Manager
Google Tag Manager funciona inyectando la CDN de Braze (una versión de nuestro SDK Web) directamente en el código de tu sitio web, lo que significa que todos los métodos del SDK están disponibles igual que si hubieras integrado el SDK sin Google Tag Manager, excepto al implementar Tarjetas de contenido.
Configuración de las Tarjetas de contenido
Para una integración estándar de la fuente de Tarjetas de contenido, puedes utilizar una etiqueta HTML personalizada en Google Tag Manager. Añade lo siguiente a tu etiqueta HTML personalizada, que activará la fuente estándar de Tarjetas de contenido:
1
2
3
<script>
window.braze.showContentCards();
</script>

Para tener más libertad a la hora de personalizar el aspecto de las Tarjetas de contenido y su fuente, puedes integrar directamente las Tarjetas de contenido en tu sitio web nativo. Puedes hacerlo de dos formas: utilizando la interfaz de usuario estándar o creando una interfaz de usuario personalizada.
Al implementar la IU de fuente estándar, los métodos de Braze deben tener window. añadido al principio del método. Por ejemplo, braze.showContentCards debería ser window.braze.showContentCards.
Para el estilo personalizado de la fuente, los pasos son los mismos que si hubieras integrado el SDK sin GTM. Por ejemplo, si quieres personalizar la anchura de la fuente de Tarjetas de contenido, puedes pegar lo siguiente en tu archivo CSS:
1
2
3
body .ab-feed {
width: 800px;
}
Actualización de plantillas
Para actualizar a la última versión del SDK Web de Braze, sigue los tres pasos siguientes en tu dashboard de Google Tag Manager:
- Actualizar plantilla de etiquetas
Ve a la página Plantillas dentro de tu espacio de trabajo. Aquí deberías ver un icono que indica que hay una actualización disponible.
Haz clic en ese icono y, tras revisar el cambio, haz clic en Aceptar actualización.
- Actualizar número de versión
Una vez actualizada tu plantilla de etiquetas, edita la etiqueta de inicialización de Braze y actualiza la versión del SDK a la versión más reciente demajor.minor. Por ejemplo, si la última versión es4.1.2, introduce4.1. Puedes ver una lista de las versiones del SDK en nuestro registro de cambios.
- Control de calidad y publicación
Comprueba que la nueva versión del SDK funciona utilizando la herramienta de depuración de Google Tag Manager antes de publicar una actualización en tu contenedor de etiquetas.
Solución de problemas
Habilitar la depuración de etiquetas
Cada plantilla de etiqueta de Braze tiene una casilla de verificación opcional Depuración de etiquetas GTM que puede utilizarse para registrar mensajes de depuración en la consola JavaScript de tu página web.

Entrar en modo depuración
Otra forma de ayudar a depurar tu integración con Google Tag Manager es utilizar la característica de modo de vista previa de Google.
Esto ayudará a identificar qué valores se envían desde la capa de datos de tu página web a cada etiqueta de Braze desencadenada y también explicará qué etiquetas se desencadenaron o no.

Verificar la secuencia de etiquetas para eventos personalizados
Si los eventos personalizados u otras acciones no se registran en Braze, una causa común es una condición de carrera en la que una etiqueta de acción (como Evento personalizado o Compra) se dispara antes de que la etiqueta de inicialización de Braze haya completado. Para solucionarlo, configura la secuencia de etiquetas en GTM:
- Abre la etiqueta de acción que no se está registrando correctamente.
- En Configuración avanzada > Secuencia de etiquetas, selecciona Una etiqueta que se dispara antes de [esta etiqueta].
- Elige tu etiqueta de inicialización de Braze como la etiqueta de configuración.
Esto asegura que el SDK esté completamente inicializado antes de que cualquier etiqueta de acción intente enviar datos a Braze.
Habilitar el registro detallado
Para capturar registros detallados para la solución de problemas, puedes habilitar el registro detallado en tu integración con Google Tag Manager. Estos registros aparecerán en la pestaña Consola de las herramientas de desarrollador de tu navegador.
En tu integración de Google Tag Manager, navega hasta tu etiqueta de inicialización de Braze y selecciona Habilitar registro del SDK Web.

Requisitos previos
Antes de poder utilizar las tarjetas de contenido de Braze, deberás realizar la integración del SDK de Braze para Android en tu aplicación. Sin embargo, no es necesario realizar ninguna configuración adicional.
Fragmentos de Google
En Android, la fuente de tarjetas de contenido se implementa como un fragmento disponible en el proyecto Braze Android UI. La clase ContentCardsFragment actualizará y mostrará automáticamente el contenido de las tarjetas de contenido y registrará los análisis de uso. Las tarjetas que pueden aparecer en el ContentCards de un usuario se crean en el panel de Braze.
Para aprender a añadir un fragmento a una actividad, consulta la documentación sobre fragmentos de Google.
Tipos y propiedades de las tarjetas
El modelo de datos de tarjetas de contenido está disponible en el SDK de Android y ofrece los siguientes tipos de tarjetas de contenido únicos. Cada tipo comparte un modelo base, lo que les permite heredar propiedades comunes del modelo base, además de tener sus propias propiedades únicas. Para obtener la documentación de referencia completa, consulta com.braze.models.cards.
Modelo de tarjeta base
El modelo de tarjeta base proporciona un comportamiento básico para todas las tarjetas.
| Propiedad | Descripción |
|---|---|
getId() |
Devuelve el ID de la tarjeta configurado por Braze. |
getViewed() |
Devuelve un booleano que refleja si la tarjeta ha sido leída o no por el usuario. |
getExtras() |
Devuelve un mapeado de extras clave-valor para esta tarjeta. |
getCreated() |
Devuelve la marca de tiempo unix de la hora de creación de la tarjeta desde Braze. |
isPinned |
Devuelve un booleano que refleja si la tarjeta está anclada. |
getOpenUriInWebView() |
Devuelve un booleano que refleja si se deben abrir las URI de esta tarjeta en el Braze WebView o no. |
getExpiredAt() |
Obtiene la fecha de caducidad de la tarjeta. |
isRemoved() |
Devuelve un booleano que refleja si el usuario final ha descartado esta tarjeta. |
isDismissibleByUser() |
Devuelve un valor booleano que indica si el usuario puede descartar la tarjeta. |
isClicked() |
Devuelve un valor booleano que refleja el estado de clic de esta tarjeta. |
isDismissed |
Devuelve un valor booleano que indica si la tarjeta ha sido descartada. Establece paratruemarcar la tarjeta como descartada. Si una tarjeta ya está marcada como descartada, no se puede volver a marcar como descartada. |
isControl() |
Devuelve un valor booleano si esta tarjeta es una tarjeta de control y no debe representarse. |
Solo imagen
Las tarjetas de sólo imagen son imágenes a tamaño completo en las que se puede hacer clic.
| Propiedad | Descripción |
|---|---|
getImageUrl() |
Devuelve la URL de la imagen de la tarjeta. |
getUrl() |
Devuelve la URL que se abrirá al hacer clic en la tarjeta. Puede ser una URL HTTP(s) o una URL de protocolo. |
getDomain() |
Devuelve el texto del enlace para la URL de la propiedad. |
Imagen con pie de foto
Las tarjetas de imágenes con subtítulos son imágenes de tamaño completo en las que se puede hacer clic y que van acompañadas de un texto descriptivo.
| Propiedad | Descripción |
|---|---|
getImageUrl() |
Devuelve la URL de la imagen de la tarjeta. |
getTitle() |
Devuelve el texto del título de la tarjeta. |
getDescription() |
Devuelve el texto del cuerpo de la tarjeta. |
getUrl() |
Devuelve la URL que se abrirá al hacer clic en la tarjeta. Puede ser una URL HTTP(s) o una URL de protocolo. |
getDomain() |
Devuelve el texto del enlace de la URL de la propiedad. |
Clásico
Una tarjeta clásica sin imagen incluida dará como resultado una tarjeta de anuncio de texto. Si se incluye una imagen, recibirás una breve tarjeta de noticias.
| Propiedad | Descripción |
|---|---|
getTitle() |
Devuelve el texto del título de la tarjeta. |
getDescription() |
Devuelve el texto del cuerpo de la tarjeta. |
getUrl() |
Devuelve la URL que se abrirá al hacer clic en la tarjeta. Puede ser una URL HTTP(s) o una URL de protocolo. |
getDomain() |
Devuelve el texto del enlace de la URL de la propiedad. |
getImageUrl() |
Devuelve la URL de la imagen de la tarjeta, sólo se aplica a la Tarjeta de Noticias Corta clásica. |
isDismissed |
Devuelve un valor booleano que indica si la tarjeta ha sido descartada. Establece paratruemarcar la tarjeta como descartada. Si una tarjeta ya está marcada como descartada, no se puede volver a marcar como descartada. |
Métodos de tarjeta
Todos los objetos del modelo de datos Card ofrecen los siguientes métodos de análisis para registrar eventos de usuario en servidores de Braze.
| Método | Descripción |
|---|---|
logImpression() |
Registra manualmente una impresión en Braze para una tarjeta concreta. |
logClick() |
Registra manualmente un clic en Braze para una tarjeta concreta. |
Requisitos previos
Antes de poder utilizar las tarjetas de contenido, tendrás que integrar el SDK de Braze Swift en tu aplicación. Sin embargo, no es necesaria ninguna configuración adicional.
Ver contextos del controlador
La interfaz de usuario predeterminada de las tarjetas de contenido puede integrarse desde la biblioteca BrazeUI del SDK de Braze. Crea el controlador de vista Tarjetas de contenido utilizando la instancia braze. Si deseas interceptar y reaccionar al ciclo de vida de la interfaz de usuario de la tarjeta de contenido, implementa BrazeContentCardUIViewControllerDelegate como delegado de tu BrazeContentCardUI.ViewController.
Para más información sobre las opciones del controlador de vista de iOS, consulta la documentación para desarrolladores de Apple.
La biblioteca BrazeUI del SDK de Swift proporciona dos contextos predeterminados de controlador de vista: navegación o modal. Esto significa que puedes integrar las tarjetas de contenido en estos contextos añadiendo unas pocas líneas de código a tu aplicación o sitio web. Ambas vistas ofrecen opciones de personalización y estilo, como se describe en la guía de personalización. También puedes crear un controlador de vista de tarjeta de contenido personalizado, en lugar de utilizar el estándar de Braze, para tener aún más opciones de personalización: consulta el tutorial sobre la interfaz de usuario de las tarjetas de contenido para ver un ejemplo.
Para manejar tarjetas de contenido con variantes de control en tu interfaz de usuario personalizada, pasa tu objeto Braze.ContentCard.Control y llama al método logImpression como harías con cualquier otro tipo de tarjeta de contenido. El objeto registrará implícitamente una impresión de control para informar a nuestros análisis de cuándo un usuario habría visto la tarjeta de control.
Navegación
Un controlador de navegación es un controlador de vistas que gestiona uno o varios controladores de vistas hijos en una interfaz de navegación. He aquí un ejemplo de push de una instancia de BrazeContentCardUI.ViewController en un controlador de navegación:
1
2
3
4
5
6
7
func pushViewController() {
guard let braze = AppDelegate.braze else { return }
let contentCardsController = BrazeContentCardUI.ViewController(braze: braze)
// Implement and set `BrazeContentCardUIViewControllerDelegate` if you wish to intercept click actions.
contentCardsController.delegate = self
self.navigationController?.pushViewController(contentCardsController, animated: true)
}
1
2
3
4
5
6
- (void)pushViewController {
BRZContentCardUIViewController *contentCardsController = [[BRZContentCardUIViewController alloc] initWithBraze:self.braze];
// Implement and set `BrazeContentCardUIViewControllerDelegate` if you wish to intercept click actions.
[contentCardsController setDelegate:self];
[self.navigationController pushViewController:contentCardsController animated:YES];
}
Modal
Utiliza presentaciones modales para crear interrupciones temporales en el flujo de trabajo de tu aplicación, como solicitar al usuario información importante. Esta vista modelo tiene una barra de navegación en la parte superior y un botón de Terminar en el lateral de la barra. He aquí un ejemplo de push de una instancia de BrazeContentCard.ViewController en un controlador modal:
1
2
3
4
5
6
7
func presentModalViewController() {
guard let braze = AppDelegate.braze else { return }
let contentCardsModal = BrazeContentCardUI.ModalViewController(braze: braze)
// Implement and set `BrazeContentCardUIViewControllerDelegate` if you wish to intercept click actions.
contentCardsModal.viewController.delegate = self
self.navigationController?.present(contentCardsModal, animated: true, completion: nil)
}
1
2
3
4
5
6
- (void)presentModalViewController {
BRZContentCardUIModalViewController *contentCardsModal = [[BRZContentCardUIModalViewController alloc] initWithBraze:AppDelegate.braze];
// Implement and set `BrazeContentCardUIViewControllerDelegate` if you wish to intercept click actions.
[contentCardsModal.viewController setDelegate:self];
[self.navigationController presentViewController:contentCardsModal animated:YES completion:nil];
}
Para ver ejemplos de uso de los controladores de vista BrazeUI, consulta los ejemplos de interfaz de usuario de las tarjetas de contenido correspondientes en nuestra aplicación Ejemplos.
Modelo de tarjeta base
El modelo de datos de las tarjetas de contenido está disponible en el módulo BrazeKit del SDK de Braze Swift. Este módulo contiene los siguientes tipos de tarjetas de contenido, que son una implementación del tipo Braze.ContentCard. Para obtener una lista completa de las propiedades de la tarjeta de contenido y su uso, consulta la claseContentCard .
- Solo imagen
- Imagen subtitulada
- Clásica
- Imagen clásica
- Control
Para acceder al modelo de datos de las tarjetas de contenido, llama a contentCards.cards en tu instancia braze. Consulta Análisis de tarjetas para obtener más información sobre cómo suscribirte a los datos de las tarjetas.
Ten en cuenta que BrazeKit ofrece una clase ContentCardRaw para que sea compatible con Objective-C.
Métodos de tarjeta
Cada tarjeta se inicializa con un objeto Context, que contiene varios métodos para gestionar el estado de tu tarjeta. Llama a estos métodos cuando quieras modificar la propiedad de estado correspondiente en un objeto tarjeta concreto.
| Método | Descripción |
|---|---|
card.context?.logImpression() |
Registra el evento de impresión de la tarjeta de contenido. |
card.context?.logClick() |
Registra el evento de clic de la tarjeta de contenido. |
card.context?.processClickAction() |
Procesa una entrada ClickAction determinada. |
card.context?.logDismissed() |
Registra el evento de tarjeta de contenido descartada. |
card.context?.logError() |
Registra un error relacionado con la tarjeta de contenido. |
card.context?.loadImage() |
Carga una determinada imagen de tarjeta de contenido desde una URL. Este método puede ser nulo cuando la tarjeta de contenido no tiene imagen. |
Para más detalles, consulta la documentación de la clase Context
Requisitos previos
Antes de poder utilizar esta característica, tendrás que integrar el SDK Braze de Cordova.
Fuentes de tarjetas
El SDK de Braze incluye una fuente de tarjetas predeterminada. Para mostrar la fuente de tarjetas predeterminada, puedes utilizar el método launchContentCards(). Este método gestiona todo el seguimiento de análisis, los descartes y la representación de las tarjetas de contenido de un usuario.
Tarjetas de contenido
Puedes utilizar estos métodos adicionales para crear una fuente personalizada de tarjetas de contenido dentro de tu aplicación:
| Método | Descripción |
|---|---|
requestContentCardsRefresh() |
Envía una petición en segundo plano para solicitar las últimas tarjetas de contenido al servidor del SDK de Braze. |
getContentCardsFromServer(successCallback, errorCallback) |
Recupera tarjetas de contenido del SDK Braze. Esto solicitará las últimas tarjetas de contenido al servidor y devolverá la lista de tarjetas al finalizar. |
getContentCardsFromCache(successCallback, errorCallback) |
Recupera tarjetas de contenido del SDK Braze. Esto devolverá la última lista de tarjetas de la caché local, que se actualizó en la última actualización. |
logContentCardClicked(cardId) |
Registra un clic para el ID de tarjeta de contenido dado. |
logContentCardImpression(cardId) |
Registra una impresión para el ID de tarjeta de contenido dado. |
logContentCardDismissed(cardId) |
Registra un descarte para el ID de tarjeta de contenido dado. |
Acerca de las tarjetas de contenido de Flutter
El SDK de Braze incluye una fuente de tarjetas predeterminada para que empieces a utilizar las tarjetas de contenido. Para mostrar la fuente de tarjetas, puedes utilizar el método braze.launchContentCards(). La fuente predeterminada de tarjetas incluida en el SDK de Braze gestionará todo el seguimiento de análisis, los descartes y la representación de las tarjetas de contenido de un usuario.
Requisitos previos
Antes de poder utilizar esta característica, tendrás que integrar el SDK de Flutter Braze.
Métodos de tarjeta
Puedes utilizar estos métodos adicionales para crear una fuente de tarjetas de contenido personalizada dentro de tu aplicación, usando los siguientes métodos disponibles en la interfaz pública del complemento:
| Método | Descripción |
|---|---|
braze.requestContentCardsRefresh() |
Solicita las últimas tarjetas de contenido al servidor del SDK de Braze. |
braze.logContentCardClicked(contentCard) |
Registra un clic para el objeto de tarjeta de contenido dado. |
braze.logContentCardImpression(contentCard) |
Registra una impresión para el objeto de tarjeta de contenido dado. |
braze.logContentCardDismissed(contentCard) |
Registra un descarte para el objeto de tarjeta de contenido dado. |
Recepción de datos de tarjetas de contenido
Para recibir datos de tarjetas de contenido en tu aplicación Flutter, BrazePlugin admite el envío de datos de tarjetas de contenido mediante Dart Streams.
El objeto BrazeContentCard admite un subconjunto de campos disponibles en los objetos del modelo nativo, como description, title, image, url, extras, etc.
Escuchar datos de tarjetas de contenido en la capa Dart
Para recibir los datos de tarjetas de contenido en la capa Dart, utiliza el código siguiente para crear un StreamSubscription y llamar a braze.subscribeToContentCards(). Recuerda llamar a cancel() en la suscripción al stream cuando ya no la necesites.
1
2
3
4
5
6
7
8
9
// Create stream subscription
StreamSubscription contentCardsStreamSubscription;
contentCardsStreamSubscription = braze.subscribeToContentCards((List<BrazeContentCard> contentCards) {
// Handle Content Cards
}
// Cancel stream subscription
contentCardsStreamSubscription.cancel();
Para ver un ejemplo, consulta main.dart en la aplicación de ejemplo del SDK de Braze para Flutter.
Transmitir datos de tarjetas de contenido desde la capa nativa de iOS
Los datos de tarjetas de contenido se transmiten automáticamente desde las capas nativas de Android e iOS. No se requiere configuración adicional.
Si estás utilizando Flutter SDK 17.1.0 o anterior, la transmisión de datos de tarjetas de contenido desde la capa nativa de iOS requiere configuración manual. Es probable que tu aplicación contenga una devolución de llamada contentCards.subscribeToUpdates que llame a BrazePlugin.processContentCards(contentCards). Para migrar a Flutter SDK 18.0.0, elimina la llamada a BrazePlugin.processContentCards(_:): la transmisión de datos ahora se gestiona automáticamente.
Para ver un ejemplo, consulta AppDelegate.swift en la aplicación de ejemplo del SDK de Braze para Flutter.
Repetición de la devolución de llamada para tarjetas de contenido
Para almacenar las tarjetas de contenido desencadenadas antes de que la devolución de llamada esté disponible y reproducirlas una vez establecida, añade la siguiente entrada al mapa customConfigs al inicializar BrazePlugin:
1
BrazePlugin braze = new BrazePlugin(customConfigs: {replayCallbacksConfigKey: true});
Acerca de las tarjetas de contenido React Native
Los SDK de Braze incluyen una fuente de tarjetas predeterminada para que empieces a utilizar las tarjetas de contenido. Para mostrar la fuente de la tarjeta, puedes utilizar el método Braze.launchContentCards(). La fuente predeterminada de tarjetas incluida en el SDK de Braze gestionará todos los análisis de seguimiento, descarte de tarjetas y representación de las tarjetas de contenido de un usuario.
Requisitos previos
Antes de poder utilizar esta característica, tendrás que integrar el SDK Braze de React Native.
Métodos de tarjetas
Para construir tu propia interfaz de usuario, puedes obtener una lista de las tarjetas disponibles y escuchar las actualizaciones de las tarjetas:
1
2
3
4
5
6
7
8
9
10
11
// Set initial cards
const [cards, setCards] = useState([]);
// Listen for updates as a result of card refreshes, such as:
// a new session, a manual refresh with `requestContentCardsRefresh()`, or after the timeout period
Braze.addListener(Braze.Events.CONTENT_CARDS_UPDATED, async (update) => {
setCards(update.cards);
});
// Manually trigger a refresh of cards
Braze.requestContentCardsRefresh();
Si decides crear tu propia interfaz de usuario para mostrar las tarjetas, debes llamar a logContentCardImpression para recibir los análisis de esas tarjetas. Esto incluye las tarjetas control, que deben ser objeto de seguimiento aunque no se muestren al usuario.
Puedes utilizar estos métodos adicionales para crear una fuente personalizada de tarjetas de contenido dentro de tu aplicación:
| Método | Descripción |
|---|---|
launchContentCards() |
Lanza el elemento de interfaz de usuario Tarjetas de contenido. |
requestContentCardsRefresh() |
Solicita las últimas tarjetas de contenido al servidor SDK de Braze. La lista de tarjetas resultante se pasa a cada uno de los oyentes de eventos de tarjeta de contenido previamente registrados. |
getContentCards() |
Recupera tarjetas de contenido del SDK Braze. Devuelve una promesa que se resuelve con la última lista de tarjetas del servidor. |
getCachedContentCards() |
Devuelve la matriz de tarjetas de contenido más reciente de la caché. |
logContentCardClicked(cardId) |
Registra un clic para el ID de tarjeta de contenido dado. Este método sólo se utiliza para análisis. Para ejecutar la acción clic, llama además a processContentCardClickAction(cardId). |
logContentCardImpression(cardId) |
Registra una impresión para el ID de tarjeta de contenido dado. |
logContentCardDismissed(cardId) |
Registra un descarte para el ID de tarjeta de contenido dado. |
processContentCardClickAction(cardId) |
Realiza la acción de una tarjeta concreta. |
Tipos de tarjeta y propiedades
El modelo de datos de tarjetas de contenido está disponible en el SDK de React Native y ofrece los siguientes tipos de tarjeta de tarjetas de contenido: Sólo imagen, Imagen con subtítulos y Clásico. También hay un tipo especial de tarjeta de Control, que se devuelve a los usuarios que están en el grupo de control de una tarjeta determinada. Cada tipo hereda propiedades comunes de un modelo base, además de sus propias propiedades únicas.
Modelo de tarjeta base
El modelo de tarjeta base proporciona un comportamiento básico para todas las tarjetas.
| Propiedad | Descripción |
|---|---|
id |
El ID de la tarjeta configurado por Braze. |
created |
La marca de tiempo UNIX de la hora de creación de la tarjeta desde Braze. |
expiresAt |
La fecha UNIX de caducidad de la tarjeta. Cuando el valor es inferior a 0, significa que la tarjeta no caduca nunca. |
viewed |
Si el usuario ha leído o no la tarjeta. Esto no registra análisis. |
clicked |
Si el usuario ha hecho clic en la tarjeta. |
pinned |
Si la tarjeta está anclada. |
dismissed |
Si el usuario ha descartado esta tarjeta. Marcar como descartada una tarjeta que ya ha sido descartada será un no-op. |
dismissible |
Si la tarjeta es descartable por el usuario. |
url |
(Opcional) La cadena de URL asociada a la acción de clic en la tarjeta. |
openURLInWebView |
Si las URL de esta tarjeta deben abrirse en la Vista Web de Braze o no. |
isControl |
Si esta tarjeta es una tarjeta de control. Las tarjetas de control no deben mostrarse al usuario. |
extras |
El mapa de extras clave-valor de esta tarjeta. |
Para una referencia completa de la tarjeta base, consulta la documentación de Android e iOS.
Solo imagen
Las tarjetas de sólo imagen son imágenes de tamaño completo en las que se puede hacer clic.
| Propiedad | Descripción |
|---|---|
type |
El tipo de tarjeta de contenido, IMAGE_ONLY. |
image |
La URL de la imagen de la tarjeta. |
imageAspectRatio |
La relación de aspecto de la imagen de la tarjeta. Sirve como pista antes de que se complete la carga de la imagen. Ten en cuenta que la propiedad puede no suministrarse en determinadas circunstancias. |
Para una referencia completa de la tarjeta de sólo imagen, consulta la documentación de Android e iOS.
Imagen subtitulada
Las tarjetas de imágenes con subtítulos son imágenes de tamaño completo en las que se puede hacer clic y que van acompañadas de un texto descriptivo.
| Propiedad | Descripción |
|---|---|
type |
El tipo de tarjeta de contenido, CAPTIONED. |
image |
La URL de la imagen de la tarjeta. |
imageAspectRatio |
La relación de aspecto de la imagen de la tarjeta. Sirve como pista antes de que se complete la carga de la imagen. Ten en cuenta que la propiedad puede no suministrarse en determinadas circunstancias. |
title |
El texto del título de la tarjeta. |
cardDescription |
El texto descriptivo de la tarjeta. |
domain |
(Opcional) El texto del enlace para la URL de la propiedad, por ejemplo, "braze.com/resources/". Se puede mostrar en la interfaz de usuario de la tarjeta para indicar la acción/dirección de hacer clic en la tarjeta. |
Para una referencia completa de la tarjeta de imagen subtitulada, consulta la documentación de Android e iOS.
Clásica
Las tarjetas clásicas tienen un título, una descripción y una imagen opcional a la izquierda del texto.
| Propiedad | Descripción |
|---|---|
type |
El tipo de tarjeta de contenido, CLASSIC. |
image |
(Opcional) La URL de la imagen de la tarjeta. |
title |
El texto del título de la tarjeta. |
cardDescription |
El texto descriptivo de la tarjeta. |
domain |
(Opcional) El texto del enlace para la URL de la propiedad, por ejemplo, "braze.com/resources/". Se puede mostrar en la interfaz de usuario de la tarjeta para indicar la acción/dirección de hacer clic en la tarjeta. |
Para una referencia completa de la tarjeta de contenido clásica (anuncio de texto), consulta la documentación de Android e iOS. Para la tarjeta de imagen clásica (noticias breves), consulta la documentación de Android e iOS.
Control
Las tarjetas de control incluyen todas las propiedades básicas, con algunas diferencias importantes. Y lo que es más importante:
- La propiedad
isControlestá garantizada entrue. - Se garantiza que la propiedad
extrasestá vacía.
Para una referencia completa de la tarjeta de control, consulta la documentación de Android e iOS.
Requisitos previos
Antes de poder utilizar las tarjetas de contenido, tendrás que integrar el SDK de Braze Swift en tu aplicación. A continuación, tendrás que completar los pasos para configurar tu aplicación tvOS.
Ten en cuenta que tendrás que implementar tu propia interfaz de usuario personalizada, ya que las tarjetas de contenido se admiten a través de una interfaz de usuario sin cabeza utilizando el SDK de Swift, que no incluye ninguna interfaz de usuario ni vistas predeterminadas para tvOS.
Configuración de tu aplicación tvOS
Paso 1: Crear una nueva aplicación iOS
En Braze, selecciona Configuración > Configuración de la aplicación y, a continuación, Añadir aplicación. Introduce un nombre para tu aplicación de tvOS, selecciona iOS (no_tvOS) y_luego selecciona Añadir aplicación.

Si seleccionas la casilla tvOS, no podrás personalizar las tarjetas de contenido para tvOS.
Paso 2: Obtén la clave de API de tu aplicación
En la configuración de tu aplicación, selecciona tu nueva aplicación para tvOS y toma nota de la clave de API de tu aplicación. Utilizarás esta clave para configurar tu aplicación en Xcode.

Paso 3: Integrar BrazeKit
Utiliza la clave de API de tu aplicación para integrar el SDK de Braze Swift en tu proyecto de tvOS en Xcode. Solo tienes que integrar BrazeKit desde el SDK Swift de Braze.
Paso 4: Crea tu interfaz de usuario personalizada
Como Braze no proporciona una interfaz predeterminada para las tarjetas de contenido en tvOS, tendrás que personalizarla tú mismo. Para un recorrido completo, consulta nuestro tutorial paso a paso: Personaliza las tarjetas de contenido para tvOS. Para ver un proyecto de ejemplo, consulta los ejemplos del SDK Swift de Braze.
Requisitos previos
Antes de poder utilizar esta característica, tendrás que integrar el SDK Braze de Unity.
Mostrar tarjetas de contenido de forma nativa
Puedes mostrar la IU predeterminada para las tarjetas de contenido utilizando la siguiente llamada:
1
Appboy.AppboyBinding.DisplayContentCards();
Recepción de datos de la tarjeta de contenido en Unity
Puedes registrar objetos del juego Unity para que se te notifique la llegada de tarjetas de contenido. Recomendamos configurar los oyentes del objeto del juego desde el editor de configuración de Braze.
Si necesitas configurar la escucha de tu objeto del juego en tiempo de ejecución, utiliza AppboyBinding.ConfigureListener() y especifica BrazeUnityMessageType.CONTENT_CARDS_UPDATED.
Nota, además tendrás que hacer una llamada a AppboyBinding.RequestContentCardsRefresh() para empezar a recibir datos en tu receptor de objetos del juego en iOS.
Análisis sintáctico de tarjetas de contenido
Los mensajes entrantes de string recibidos en tu devolución de llamada al objeto del juego Tarjetas de contenido pueden analizarse en nuestro ContentCard para mayor comodidad.
El análisis de las tarjetas de contenido requiere el análisis JSON, consulta el siguiente ejemplo para obtener más detalles:
Ejemplo de devolución de llamada de tarjetas de contenido
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
void ExampleCallback(string message) {
try {
JSONClass json = (JSONClass)JSON.Parse(message);
// Content Card data is contained in the `mContentCards` field of the top level object.
if (json["mContentCards"] != null) {
JSONArray jsonArray = (JSONArray)JSON.Parse(json["mContentCards"].ToString());
Debug.Log(String.Format("Parsed content cards array with {0} cards", jsonArray.Count));
// Iterate over the card array to parse individual cards.
for (int i = 0; i < jsonArray.Count; i++) {
JSONClass cardJson = jsonArray[i].AsObject;
try {
ContentCard card = new ContentCard(cardJson);
Debug.Log(String.Format("Created card object for card: {0}", card));
// Example of logging Content Card analytics on the ContentCard object
card.LogImpression();
card.LogClick();
} catch {
Debug.Log(String.Format("Unable to create and log analytics for card {0}", cardJson));
}
}
}
} catch {
throw new ArgumentException("Could not parse content card JSON message.");
}
}
Actualizar tarjetas de contenido
Para actualizar las tarjetas de contenido desde Braze, llama a cualquiera de los siguientes métodos:
1
2
3
4
// results in a network request to Braze
AppboyBinding.RequestContentCardsRefresh()
AppboyBinding.RequestContentCardsRefreshFromCache()
Análisis
Los clics y las impresiones deben registrarse manualmente para las tarjetas de contenido no mostradas directamente por Braze.
Utiliza LogClick() y LogImpression() en ContentCard para registrar los clics y las impresiones de tarjetas concretas.
Acerca de las tarjetas de contenido de .NET MAUI
El SDK Braze .NET MAUI (antes Xamarin) incluye una fuente de tarjetas predeterminada para que puedas empezar a utilizar las tarjetas de contenido. La fuente predeterminada de tarjetas incluida en el SDK de Braze gestionará todos los análisis de seguimiento, descarte de tarjetas y representación de las tarjetas de contenido de un usuario.
Requisitos previos
Antes de poder utilizar esta característica, deberás realizar la integración del SDK .NET MAUI Braze.
Tipos y propiedades de las tarjetas
El SDK Braze .NET MAUI tiene tres tipos de tarjetas de contenido únicos que comparten un modelo base: Banner, imagen con pie de foto y clásico. Cada tipo hereda propiedades comunes de un modelo base y tiene las siguientes propiedades adicionales.
Modelo de tarjeta base
| Propiedad | Descripción |
|---|---|
idString |
El ID de la tarjeta configurado por Braze. |
created |
La marca de tiempo UNIX de la hora de creación de la tarjeta desde Braze. |
expiresAt |
La fecha UNIX de caducidad de la tarjeta. Cuando el valor es inferior a 0, significa que la tarjeta no caduca nunca. |
viewed |
Si el usuario ha leído o no la tarjeta. Esto no registra análisis. |
clicked |
Si el usuario ha hecho clic en la tarjeta. |
pinned |
Si la tarjeta está anclada. |
dismissed |
Si el usuario ha descartado esta tarjeta. Marcar como descartada una tarjeta que ya ha sido descartada será un no-op. |
dismissible |
Si la tarjeta es descartable por el usuario. |
urlString |
(Opcional) La cadena URL asociada a la acción de clic en la tarjeta. |
openUrlInWebView |
Si las URL de esta tarjeta deben abrirse en Braze WebView o no. |
isControlCard |
Si esta tarjeta es una tarjeta de control. Las tarjetas de control no deben mostrarse al usuario. |
extras |
El mapa de extras clave-valor de esta tarjeta. |
isTest |
Si esta tarjeta es una tarjeta de prueba. |
Para una referencia completa de la tarjeta base, consulta la documentación de Android e iOS.
Banner
Las tarjetas banner son imágenes de tamaño completo en las que se puede hacer clic.
| Propiedad | Descripción |
|---|---|
image |
La URL de la imagen de la tarjeta. |
imageAspectRatio |
La relación de aspecto de la imagen de la tarjeta. Sirve como pista antes de que se complete la carga de la imagen. Ten en cuenta que la propiedad puede no suministrarse en determinadas circunstancias. |
Para una referencia completa de la tarjeta banner, consulta la documentación de Android e iOS (ahora renombrada a sólo imagen).
Imagen subtitulada
Las tarjetas de imágenes con subtítulos son imágenes de tamaño completo en las que se puede hacer clic y que van acompañadas de un texto descriptivo.
| Propiedad | Descripción |
|---|---|
image |
La URL de la imagen de la tarjeta. |
imageAspectRatio |
La relación de aspecto de la imagen de la tarjeta. Sirve como pista antes de que se complete la carga de la imagen. Ten en cuenta que la propiedad puede no suministrarse en determinadas circunstancias. |
title |
El texto del título de la tarjeta. |
cardDescription |
El texto descriptivo de la tarjeta. |
domain |
(Opcional) El texto del enlace para la URL de la propiedad, por ejemplo, "braze.com/resources/". Se puede mostrar en la interfaz de usuario de la tarjeta para indicar la acción/dirección de hacer clic en la tarjeta. |
Para una referencia completa de la tarjeta de imagen subtitulada, consulta la documentación de Android e iOS.
Clásica
Las tarjetas clásicas tienen un título, una descripción y una imagen opcional a la izquierda del texto.
| Propiedad | Descripción |
|---|---|
image |
(Opcional) La URL de la imagen de la tarjeta. |
title |
El texto del título de la tarjeta. |
cardDescription |
El texto descriptivo de la tarjeta. |
domain |
(Opcional) El texto del enlace para la URL de la propiedad, por ejemplo, "braze.com/resources/". Se puede mostrar en la interfaz de usuario de la tarjeta para indicar la acción/dirección de hacer clic en la tarjeta. |
Para una referencia completa de la tarjeta de contenido clásica (anuncio de texto), consulta la documentación de Android e iOS. Para una referencia completa de la tarjeta de imagen clásica (noticias breves), consulta la documentación de Android e iOS.
Métodos de tarjeta
Puedes utilizar estos métodos adicionales para crear una fuente personalizada de tarjetas de contenido dentro de tu aplicación:
| Método | Descripción |
|---|---|
requestContentCardsRefresh() |
Solicita las últimas tarjetas de contenido al servidor SDK de Braze. |
getContentCards() |
Recupera tarjetas de contenido del SDK Braze. Esto devolverá la última lista de tarjetas del servidor. |
logContentCardClicked(cardId) |
Registra un clic para el ID de tarjeta de contenido dado. Este método sólo se utiliza para análisis. |
logContentCardImpression(cardId) |
Registra una impresión para el ID de tarjeta de contenido dado. |
logContentCardDismissed(cardId) |
Registra un descarte para el ID de tarjeta de contenido dado. |
Editar esta página en GitHub