Filtrage des annonces incitant à installer une application

Les nouvelles installations d'applications mobiles sont souvent motivées par des annonces incitant à installer une application. Pour maximiser le ROI de vos dépenses publicitaires, nous vous recommandons de ne pas diffuser d'annonce incitant à installer une application sur les appareils où cette application est déjà installée. Dans cette proposition, nous appelons cette pratique "filtrage des annonces incitant à installer une application".

Cette proposition explique comment l'API Protected Audience sur Android prend en charge le filtrage des annonces contextuelles, en particulier le filtrage des annonces incitant à installer une application, tout en protégeant la confidentialité. Pour y participer, l'application doit explicitement activer le filtrage des annonces incitant à installer une application. Lors de la sélection des annonces, les annonces candidates sont filtrées en fonction de la liste des applications installées sur l'appareil connu par la technologie publicitaire. La liste des applications installées n'est visible que dans le flux de sélection des annonces et s'appuie sur la plate-forme côté achat pour indiquer qu'une annonce spécifique doit être filtrée en fonction de l'existence d'une application sur l'appareil.

Pour configurer le filtrage des annonces incitant à installer une application, procédez comme suit.

Étape 1 : Enregistrer l'application pour le filtrage des annonces incitant à installer une application

Pour activer le filtrage des annonces incitant à installer une application, le développeur appelle l'API d'enregistrement des applications registerForAdFiltering à partir de son application, ou d'un SDK ad tech, avec une liste eTLD+1 d'acheteurs de technologie publicitaire. Cela permet aux acheteurs de la liste, et uniquement à ces acheteurs, de filtrer les annonces en fonction de l'état d'installation de l'application, directement ou via le SDK de la technologie publicitaire. L'enregistrement permet au développeur de l'application de contrôler totalement si son application doit participer ou non au filtrage des annonces incitant à installer une application.

void registerForAdFiltering(List<AdTechIdentifier> buyers);

Étape 2 : Demander à filtrer les annonces incitant à installer une application

Lorsqu'une annonce est examinée pour les enchères, les acheteurs peuvent choisir de la filtrer en fonction de l'état d'installation de l'application. Pour ce faire, incluez le nom de package de l'application dans les métadonnées de l'annonce. La demande de filtrage des annonces incitant à installer une application fait partie des données relatives aux annonces transmises au processus d'enchères Protected Audience. Ces données sont créées différemment selon qu'il s'agit d'une annonce contextuelle ou de remarketing.

  • Le principal cas d'utilisation pour le filtrage des annonces incitant à installer une application concerne les annonces contextuelles. Ici, les informations de filtrage sont incluses dans les données relatives aux annonces que les acheteurs peuvent fournir aux vendeurs lorsqu'ils répondent à une enchère contextuelle en dehors de Protected Audience. Protected Audience s'attend à ce que ces informations de filtrage soient renvoyées dans la réponse contextuelle, comme toutes les autres métadonnées spécifiques aux annonces.
  • Pour le cas d'utilisation des annonces de remarketing, Protected Audience s'attend à ce que vous incluiez les informations de filtrage dans l'audience personnalisée. Vous pouvez choisir de le faire lorsque vous rejoignez l'audience et lorsque vous récupérez de nouvelles données d'audience dans le cadre du processus de mise à jour de l'audience.

La demande de filtrage des annonces incitant à installer une application doit se présenter comme suit dans l'objet JSON AdData :

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

Remarque : Vous pouvez filtrer les annonces incitant à installer une application pour plusieurs applications à la fois. Pour ce faire, listez simplement tous les noms de packages d'applications à évaluer. Si ne serait-ce qu'un package figure dans la liste d'installations d'applications, l'annonce est filtrée.

Nous étudions des moyens d'activer le chiffrement et/ou la signature des informations sur les annonces contextuelles. Nous souhaiterions recueillir vos commentaires à ce sujet.

Étape 3 : Filtrer les annonces incitant à installer une application pendant la sélection des annonces

Lors d'une demande d'annonce, l'acheteur peut transmettre plusieurs annonces au vendeur avec des informations de filtrage afin que les annonces pour les applications installées puissent être filtrées. Le côté vente est nécessaire pour transmettre les informations de filtrage dans le champ adData de la configuration de la fonction selectAds. Android s'attend à un format de message semblable à celui ci-dessous.

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);

Le filtrage est traité dans l'API selectAds. Protected Audience filtre l'annonce si l'application spécifiée dans le message correspond à l'application figurant dans la liste d'installations d'applications spécifique des acheteurs ad tech. Deux résultats sont possibles :

  • L'application ne figure pas dans cette liste. Elle n'est donc pas installée ni ouverte.
  • L'application figure dans cette liste. Elle est donc installée et ouverte.

Si Protected Audience détecte qu'une application est déjà présente, l'annonce est exclue de la liste des annonces sur lesquelles la mise aux enchères utilise scoreAds.

Remarques concernant les annonces contextuelles

Avec le filtrage des annonces incitant à installer une application, les API Protected Audience deviennent compatibles avec le filtrage des annonces contextuelles. Il est important de spécifier quelques points pour les cas où l'enchère est une combinaison d'annonces contextuelles et de remarketing, ou dans les cas où elle se compose seulement d'annonces contextuelles.

  • Lors d'une mise aux enchères selectAd, l'acheteur a la possibilité de transmettre une liste d'objets ContextualAd. Ces objets contiennent l'eTLD+1 de l'acheteur d'annonces, l'enchère pour l'annonce, une URL renvoyant vers la logique de création de rapports de l'annonce et l'AdData contenant l'URL du contenu de l'annonce. Notez que le format AdData est utilisé à la fois dans les annonces contextuelles et celles de remarketing.

  • Au début du processus d'enchères, les annonces contextuelles et de remarketing sont filtrées en fonction de l'application répertoriée qu'elles peuvent voir. Les valeurs d'enchères sont ensuite définies pour les annonces de remarketing, et les annonces contextuelles et de remarketing sont évaluées à l'aide de la fonction scoreAds fournie. L'annonce avec le score le plus élevé remporte l'enchère. Notez que ce processus fonctionne même si aucune annonce de remarketing n'est présente.

  • Si une annonce contextuelle remporte l'enchère et que le rapport sur les impressions est déclenché par l'application, Protected Audience télécharge et exécute une fonction JS nommée reportWin() à partir de l'URL du rapport incluse dans les données relatives à l'annonce contextuelle. Le processus de création de rapports est le même que pour une annonce de remarketing qui remporte la mise aux enchères.

    Exemple de fonction de rapports 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} };
    }