Ya está disponible Privacy Sandbox en la Vista previa para desarrolladores. Descubre cómo comenzar y continúa enviando comentarios.

Filtrado de anuncios de instalación de aplicaciones

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Por lo general, los anuncios de instalación de aplicaciones suelen generar nuevas instalaciones de apps para dispositivos móviles. Para maximizar el ROI de la inversión publicitaria, es recomendable no mostrar un anuncio para instalar una aplicación en dispositivos que ya tienen instalada esa app. En esta propuesta, nos referimos a esta práctica como "filtrado de anuncios de instalación de aplicaciones".

Esta propuesta explica cómo FLEDGE en Android admitirá el filtrado de anuncios contextuales, en particular el de anuncios de instalación de aplicaciones, de una manera que preserva la privacidad. Para participar, la app en el dispositivo debe habilitar el filtrado de anuncios de instalación de aplicaciones de forma explícita. Durante la selección de anuncios, los candidatos se filtrarán según la lista de apps instaladas en el dispositivo que la plataforma de AdTech conoce. La lista de apps instaladas solo es visible dentro del flujo de selección de anuncios y se basa en la plataforma orientada a la compra para indicar que un anuncio específico debe filtrarse en función de la existencia de una app en el dispositivo.

A fin de configurar el filtrado de anuncios de instalación de aplicaciones, sigue estos pasos:

Paso 1: Registra la app para el filtrado de anuncios de instalación de aplicaciones

Para habilitar el filtrado de anuncios de instalación de aplicaciones, el desarrollador de apps invoca la API de registro de apps de registerForAdFiltering desde su app o un SDK de AdTech con una lista de eTLD+1 de compradores de AdTech. Esto permite que los compradores de la lista, y solo ellos, filtren los anuncios según el estado de instalación de la app, ya sea directamente o a través del SDK de sus plataformas de AdTech. El registro le brinda al desarrollador de apps control total sobre si la app debe participar o no en el filtrado de anuncios de instalación de aplicaciones.

void registerForAdFiltering(List<AdTechIdentifier> buyers);

Paso 2: Solicita filtrar los anuncios de instalación de aplicaciones

Cuando se considera un anuncio para ofertar, los compradores pueden elegir marcarlo a los efectos de que se filtre según el estado de instalación de una app. A tal fin, se incluye el nombre del paquete de la app en los metadatos del anuncio. La solicitud de filtrado de anuncios de instalaciones de aplicaciones forma parte de los datos de anuncios que se ingresan en el proceso de subasta de FLEDGE. Esos datos de anuncios se crean de manera diferente según si se trata de un anuncio contextual o de remarketing.

  • En el caso de uso de anuncios contextuales, que es el caso de uso principal para el filtrado de anuncios de instalaciones de aplicaciones, la información de filtrado se incluye como parte de los datos de anuncios que los compradores pueden proporcionar a los vendedores cuando responden a una oferta contextual fuera de FLEDGE. FLEDGE esperará que esta información de filtrado se muestre como parte de la respuesta contextual, al igual que cualquier otro metadato específico del anuncio.

  • En el caso de uso de anuncios de remarketing, FLEDGE esperará que la información de filtrado se incluya en el público personalizado. Para que se lleve a cabo esta inclusión, existen 2 oportunidades: al momento de unirse al público y cuando se recuperan datos de públicos nuevos como parte del proceso de actualización de públicos.

La solicitud para filtrar anuncios de instalación de aplicaciones debe tener el siguiente aspecto dentro del objeto JSON AdData:

{
  "render_uri": "https://..",
  "metadata": {..},
  "filters": {
    "app_install": {
       "app_package_names": ["app1.package", "app2.package"]
    }
  }
}

Nota: Puedes filtrar los anuncios de instalación de aplicaciones de varias apps al mismo tiempo. Para ello, enumera todos los nombres de paquetes de apps que se deben evaluar. Si se encuentra CUALQUIERA de los paquetes en la lista de instalación de aplicaciones, se filtrará el anuncio.

Estamos explorando formas de habilitar la encriptación o la firma de la información de los anuncios contextuales y solicitamos tus comentarios sobre este tema.

Paso 3: Filtra los anuncios de instalación de aplicaciones durante la selección de anuncios

Durante una solicitud de anuncio, el comprador puede devolver varios anuncios al vendedor con información de filtrado de modo que se puedan filtrar los anuncios de las apps instaladas. La parte orientada a la venta es necesaria para pasar la información de filtrado como parte de la configuración de la función selectAds en el campo adData. Android esperará un formato de mensaje similar al que se muestra a continuación. Ten en cuenta que, para los anuncios contextuales, los datos de anuncios se pasan a la función, ya que todavía no están en el dispositivo, a diferencia de los anuncios de remarketing en los que los datos de anuncios se basan en públicos personalizados.

AdData myAdData = new AdData.Builder()
        .setRenderUri(Uri.parse("https://.."))
        .setMetadata("{...}")
        .setFilters(new AdFilters.Builder()
                .setAppInstalledFilter(new AppInstalledFilter.Builder()
                    .setPackageNames(ImmutableList.of("app1.package", "app2.package"))
                    .build())
                .build())
        .build();

AdSelectionConfig myAdSelectionConfig = new AdSelectionConfig.Builder()
    .setSeller(AdTechIdentifier.fromString("example-ssp1.com"))
    .setDecisionLogicUri(Uri.parse("https://..."))
    ...
    .setContextualAds(ImmutableList.of(new ContextualAd.Builder()
                      .setBuyer(AdTechIdentifier.fromString("example.com"))
                      .setReportingUri("https://example.com/reporting")
                      .setBid(20)
                      // myAdData could be taken from the JSON above
                      .setAd(myAdData)
                      .build()))
    .build();

// Invoke ad services API to initiate ad selection workflow.
selectAds(myAdSelectionConfig);

El filtrado se procesa dentro de la API de selectAds. FLEDGE filtrará el anuncio si la app especificada en el mensaje coincide con la de la lista de apps instaladas específica de los compradores de la plataforma de AdTech. Hay dos resultados posibles:

  • La app no está en esta lista, lo que significa que no está instalada ni abierta.
  • La app aparece en esta lista, lo que significa que está instalada y abierta.

Si FLEDGE detecta que una app ya existe, el anuncio se excluye de la lista de anuncios que usa la subasta para ejecutar scoreAds.

Consideraciones cuando se trata de anuncios contextuales

Con el filtrado de anuncios de instalación de aplicaciones, las APIs de FLEDGE comienzan a admitir el filtrado de anuncios contextuales. Algunos aspectos son importantes de especificar en las situaciones en las que la subasta es una combinación de anuncios contextuales y de remarketing, o bien cuando está compuesta solo por anuncios contextuales.

  • Cuando se ejecuta una subasta de selectAd, el comprador tiene la opción de pasar una lista de objetos ContextualAd. Esos objetos contendrán el eTLD+1 del comprador del anuncio, la oferta para el anuncio, una URL que dirija a la lógica de informes del anuncio y el AdData con la URL real del contenido del anuncio. Ten en cuenta que el formato AdData se usa tanto en los anuncios contextuales como en los de remarketing.

  • Al comienzo del proceso de subasta, los anuncios contextuales y de remarketing se filtrarán según la app de la lista que ellos tengan visible. Luego, se decidirán los valores de la oferta para cualquier anuncio de remarketing y se puntuarán tanto estos anuncios como los contextuales con la función scoreAds proporcionada. El anuncio con la puntuación más alta ganará. Ten en cuenta que este proceso funciona incluso si no hay anuncios de remarketing.

  • Si un anuncio contextual gana la subasta y los informes de impresiones se activan mediante la app, FLEDGE descargará y ejecutará una función JS llamada reportWin() desde la URL de informes incluida en los datos del anuncio contextual. Esto es similar a cómo se realizan los informes de un anuncio de remarketing que gana la subasta.

    Ejemplo de la función de informes de JavaScript:

    function reportWin(ad_selection_signals, per_buyer_signals, signals_for_buyer,
    contextual_signals) {
    let reporting_address = 'https://reporting.example.com';
    return {'status': 0, 'results': {'reporting_uri':
         reporting_address + '?some_signal=' + per_buyer_signals.some_signal} };
    }