Spots publicitaires

Avertissement

À compter du 1er juin 2020, la plateforme de monétisation Microsoft Ad pour les applications Windows UWP sera arrêtée. En savoir plus

Cette procédure pas à pas montre comment inclure des publicités interstitielles dans des applications et des jeux plateforme Windows universelle (UWP) pour Windows 10 et Windows 11. Pour obtenir des exemples complets de projet qui montrent comment ajouter des spots publicitaires à des applications JavaScript/HTML et XAML en C# et C++, voir Exemples de publicité sur GitHub.

Que sont les spots publicitaires ?

Contrairement aux bannières publicitaires standard, qui sont limitées à une partie d’une interface utilisateur dans une application ou un jeu, les publicités interstitielles sont affichées sur l’écran entier. Deux formes de base sont fréquemment utilisées dans les jeux.

  • Avec les publicités de type Paywall, l’utilisateur doit regarder une publicité à intervalles réguliers. Par exemple entre les niveaux de jeu :

    whatisaninterstitial

  • Avec les annonces basées sur des récompenses , l’utilisateur recherche explicitement un avantage, tel qu’un conseil ou un temps supplémentaire pour terminer le niveau, et initialise la publicité via l’interface utilisateur de l’application.

Nous fournissons deux types de publicités interstitielles à utiliser dans vos applications et jeux : les publicités vidéo interstitielles et les bannières publicitaires interstitielles.

Notes

L’API pour les publicités interstitielles ne gère aucune interface utilisateur, sauf au moment de la lecture de la vidéo. Reportez-vous aux meilleures pratiques Spots pour obtenir des recommandations sur les choses à faire et à ne pas faire, si vous envisagez d’intégrer des spots publicitaires dans votre application.

Prérequis

  • Installez le SDK Microsoft Advertising avec Visual Studio 2015 ou une version ultérieure de Visual Studio. Pour obtenir des instructions d’installation, consultez cet article.

Intégrer une publicité interstitielle dans votre application

Pour afficher des spots publicitaires dans votre application, suivez les instructions correspondant au type de projet.

XAML/.NET

Cette section fournit des exemples en C#, mais Visual Basic et C++ sont également pris en charge pour les projets XAML/.NET. Pour voir un exemple de code complet en C#, consultez Exemple de code pour spot publicitaire en C#.

  1. Ouvrez votre projet dans Visual Studio.

    Notes

    Si vous utilisez un projet existant, ouvrez le fichier Package.appxmanifest dans votre projet et vérifiez que la fonctionnalité Internet (client) est sélectionnée. Votre application a besoin de cette fonctionnalité pour recevoir des annonces de test et des publicités en direct.

  2. Si votre projet cible Toute UC, mettez-le à jour pour utiliser une sortie de génération propre à l’architecture (par exemple, x86). Si votre projet cible Toute UC, vous ne pourrez pas ajouter une référence à la bibliothèque de publicités Microsoft dans les étapes suivantes. Pour plus d’informations, consultez Erreurs de référence provoquées par le ciblage de Toute UC dans votre projet.

  3. Ajoutez une référence au SDK Microsoft Advertising dans votre projet :

    1. Dans la fenêtre Explorateur de solutions, cliquez avec le bouton droit sur Références, puis sélectionnez Ajouter une référence...
    2. Dans Gestionnaire de références, développez Windows universel, cliquez sur Extensions, puis cochez la case en regard de Kit de développement logiciel (SDK) Microsoft Advertising pour XAML (version 10.0).
    3. Dans Gestionnaire de références, cliquez sur OK.
  4. Dans le fichier de code approprié de votre application (par exemple, dans MainPage.xaml.cs ou dans un fichier de code d’une autre page), ajoutez la référence d’espace de noms ci-dessous.

    using Microsoft.Advertising.WinRT.UI;
    
  5. À un emplacement approprié de votre application (par exemple, dans MainPage ou dans une autre page), déclarez un objet InterstitialAd et plusieurs champs de chaîne représentant l’ID de l’application et l’ID d’unité publicitaire de votre spot publicitaire. L’exemple de code suivant affecte les myAppId champs et myAdUnitId aux valeurs de test pour les publicités interstitielles.

    Notes

    Chaque InterstitialAd a une unité publicitaire correspondante qui est utilisée par nos services pour diffuser des publicités au contrôle, et chaque unité publicitaire se compose d’un ID d’unité publicitaire et d’un ID d’application. Dans ces étapes, vous affectez des valeurs d’ID d’unité publicitaire et d’ID d’application de test à votre contrôle. Ces valeurs de test peuvent uniquement être utilisées dans une version de test de votre application. Avant de publier votre application dans le Windows Store, vous devez remplacer ces valeurs de test par des valeurs actives de l’Espace partenaires.

    InterstitialAd myInterstitialAd = null;
    string myAppId = "d25517cb-12d4-4699-8bdc-52040c712cab";
    string myAdUnitId = "test";
    
  6. Dans le code exécuté au démarrage (par exemple, dans le constructeur de la page), instanciez l’objet InterstitialAd et connectez les gestionnaires d’événements correspondant aux événements de l’objet.

    myInterstitialAd = new InterstitialAd();
    myInterstitialAd.AdReady += MyInterstitialAd_AdReady;
    myInterstitialAd.ErrorOccurred += MyInterstitialAd_ErrorOccurred;
    myInterstitialAd.Completed += MyInterstitialAd_Completed;
    myInterstitialAd.Cancelled += MyInterstitialAd_Cancelled;
    
  7. Si vous souhaitez afficher une publicité vidéo interstitielle : environ 30 à 60 secondes avant que vous n’ayez besoin de la publicité, utilisez la méthode RequestAd pour pré-extraire la publicité. Cela laisse suffisamment de temps pour demander et préparer la publicité avant qu’elle ne soit affichée. Veillez à spécifier AdType.Video pour le type d’annonce.

    myInterstitialAd.RequestAd(AdType.Video, myAppId, myAdUnitId);
    

    Si vous souhaitez afficher une bannière publicitaire interstitielle : environ 5 à 8 secondes avant que vous n’ayez besoin de l’annonce, utilisez la méthode RequestAd pour pré-extraire la publicité. Cela laisse suffisamment de temps pour demander et préparer la publicité avant qu’elle ne soit affichée. Veillez à spécifier AdType.Display pour le type d’annonce.

    myInterstitialAd.RequestAd(AdType.Display, myAppId, myAdUnitId);
    
  8. Au point dans votre code où vous souhaitez afficher la vidéo ou la bannière publicitaire interstitielle, vérifiez que l’objet InterstitialAd est prêt à être affiché, puis affichez-le à l’aide de la méthode Show .

    if (InterstitialAdState.Ready == myInterstitialAd.State)
    {
        myInterstitialAd.Show();
    }
    
  9. Définissez les gestionnaires d’événements pour l’objet InterstitialAd.

    void MyInterstitialAd_AdReady(object sender, object e)
    {
        // Your code goes here.
    }
    
    void MyInterstitialAd_ErrorOccurred(object sender, AdErrorEventArgs e)
    {
        // Your code goes here.
    }
    
    void MyInterstitialAd_Completed(object sender, object e)
    {
        // Your code goes here.
    }
    
    void MyInterstitialAd_Cancelled(object sender, object e)
    {
        // Your code goes here.
    }
    
  10. Générez et testez votre application pour vérifier qu’elle affiche les publicités de test.

HTML/JavaScript

Les instructions suivantes supposent que vous avez créé un projet Windows universel pour JavaScript dans Visual Studio et que vous ciblez un processeur spécifique. Pour voir un exemple de code complet, consultez Exemple de code pour spot publicitaire en JavaScript.

  1. Ouvrez votre projet dans Visual Studio.

  2. Si votre projet cible Toute UC, mettez-le à jour pour utiliser une sortie de génération propre à l’architecture (par exemple, x86). Si votre projet cible Toute UC, vous ne pourrez pas ajouter une référence à la bibliothèque de publicités Microsoft dans les étapes suivantes. Pour plus d’informations, consultez Erreurs de référence provoquées par le ciblage de Toute UC dans votre projet.

  3. Ajoutez une référence au SDK Microsoft Advertising dans votre projet :

    1. Dans la fenêtre Explorateur de solutions, cliquez avec le bouton droit sur Références, puis sélectionnez Ajouter une référence...
    2. Dans Gestionnaire de références, développez Windows universel, cliquez sur Extensions, puis cochez la case en regard de Kit de développement logiciel (SDK) Microsoft Advertising pour JavaScript (version 10.0).
    3. Dans Gestionnaire de références, cliquez sur OK.
  4. Dans la <section head> du fichier HTML dans le projet, après les références JavaScript du projet de default.css et de default.js, ajoutez la référence à ad.js.

    <script src="//Microsoft.Advertising.JavaScript/ad.js"></script>
    
  5. Dans un fichier .js de votre projet, déclarez un objet InterstitialAd et plusieurs champs contenant l’ID de l’application et l’ID d’unité publicitaire de votre spot publicitaire. L’exemple de code suivant affecte les applicationId champs et adUnitId aux valeurs de test pour les publicités interstitielles.

    Notes

    Chaque InterstitialAd a une unité publicitaire correspondante qui est utilisée par nos services pour diffuser des publicités au contrôle, et chaque unité publicitaire se compose d’un ID d’unité publicitaire et d’un ID d’application. Dans ces étapes, vous affectez des valeurs d’ID d’unité publicitaire et d’ID d’application de test à votre contrôle. Ces valeurs de test peuvent uniquement être utilisées dans une version de test de votre application. Avant de publier votre application dans le Windows Store, vous devez remplacer ces valeurs de test par des valeurs actives de l’Espace partenaires.

    var interstitialAd = null;
    var applicationId = "d25517cb-12d4-4699-8bdc-52040c712cab";
    var adUnitId = "test";
    
  6. Dans le code exécuté au démarrage (par exemple, dans le constructeur de la page), instanciez l’objet InterstitialAd et connectez les gestionnaires d’événements de l’objet.

    interstitialAd = new MicrosoftNSJS.Advertising.InterstitialAd();
    interstitialAd.onErrorOccurred = errorOccurredHandler;
    interstitialAd.onAdReady = adReadyHandler;
    interstitialAd.onCancelled = cancelledHandler;
    interstitialAd.onCompleted = completedHandler;
    
  7. Si vous souhaitez afficher une publicité vidéo interstitielle : environ 30 à 60 secondes avant que vous n’ayez besoin de la publicité, utilisez la méthode RequestAd pour pré-extraire la publicité. Cela laisse suffisamment de temps pour demander et préparer la publicité avant qu’elle ne soit affichée. Veillez à spécifier InterstitialAdType.video pour le type d’annonce.

    if (interstitialAd) {
        interstitialAd.requestAd(MicrosoftNSJS.Advertising.InterstitialAdType.video, applicationId, adUnitId);
    }
    

    Si vous souhaitez afficher une bannière publicitaire interstitielle : environ 5 à 8 secondes avant que vous n’ayez besoin de l’annonce, utilisez la méthode RequestAd pour pré-extraire la publicité. Cela laisse suffisamment de temps pour demander et préparer la publicité avant qu’elle ne soit affichée. Veillez à spécifier InterstitialAdType.display pour le type d’annonce.

    if (interstitialAd) {
        interstitialAd.requestAd(MicrosoftNSJS.Advertising.InterstitialAdType.display, applicationId, adUnitId);
    }
    
  8. Dans votre code, là où vous souhaitez afficher la publicité, vérifiez que l’objet InterstitialAd est prêt à être affiché, puis affichez-le à l’aide de la méthode Show.

    if (interstitialAd && interstitialAd.state === MicrosoftNSJS.Advertising.InterstitialAdState.ready) {
        interstitialAd.show();
    }
    
  9. Définissez les gestionnaires d’événements pour l’objet InterstitialAd.

    function adReadyHandler(sender) {
      // Your code goes here.
    }
    
    function errorOccurredHandler(sender, args) {
      // Your code goes here.
    }
    
    function completedHandler(sender) {
      // Your code goes here.
    }
    
    function cancelledHandler(sender) {
      // Your code goes here.
    }
    
  10. Générez et testez votre application pour vérifier qu’elle affiche les publicités de test.

C++ (technologie interop DirectX)

Cet exemple suppose que vous avez créé un projet D’application C++ DirectX et XAML (Windows universel) dans Visual Studio et que vous ciblez une architecture de processeur spécifique.  

  1. Ouvrez votre projet dans Visual Studio.

  2. Ajoutez une référence au SDK Microsoft Advertising dans votre projet :

    1. Dans la fenêtre Explorateur de solutions, cliquez avec le bouton droit sur Références, puis sélectionnez Ajouter une référence...
    2. Dans Gestionnaire de références, développez Windows universel, cliquez sur Extensions, puis cochez la case en regard de Kit de développement logiciel (SDK) Microsoft Advertising pour XAML (version 10.0).
    3. Dans Gestionnaire de références, cliquez sur OK.
  3. Dans un fichier d’en-tête approprié de votre application (par exemple, DirectXPage.xaml.h), déclarez un objet InterstitialAd et les méthodes de gestionnaire d’événements associées.

    Microsoft::Advertising::WinRT::UI::InterstitialAd^ m_interstitialAd;
    void OnAdReady(Object^ sender, Object^ args);
    void OnAdCompleted(Object^ sender, Object^ args);
    void OnAdCancelled(Object^ sender, Object^ args);
    void OnAdError(Object^ sender, Microsoft::Advertising::WinRT::UI::AdErrorEventArgs^ args);
    
  4. Dans le même fichier d’en-tête, déclarez plusieurs champs de chaîne représentant l’ID de l’application et l’ID d’unité publicitaire de votre spot publicitaire. L’exemple de code suivant affecte les myAppId champs et myAdUnitId aux valeurs de test pour les publicités interstitielles.

    Notes

    Chaque InterstitialAd a une unité publicitaire correspondante qui est utilisée par nos services pour diffuser des publicités au contrôle, et chaque unité publicitaire se compose d’un ID d’unité publicitaire et d’un ID d’application. Dans ces étapes, vous affectez des valeurs d’ID d’unité publicitaire et d’ID d’application de test à votre contrôle. Ces valeurs de test peuvent uniquement être utilisées dans une version de test de votre application. Avant de publier votre application dans le Windows Store, vous devez remplacer ces valeurs de test par des valeurs actives de l’Espace partenaires.

    Platform::String^ myAppId = L"d25517cb-12d4-4699-8bdc-52040c712cab";
    Platform::String^ myAdUnitId = L"test";
    
  5. Dans le fichier .cpp dans lequel vous voulez ajouter du code pour afficher un spot publicitaire, ajoutez la référence d’espace de noms ci-dessous. Les exemples suivants partent du principe que vous ajoutez le code dans le fichier DirectXPage.xaml.cpp de votre application.

    using namespace Microsoft::Advertising::WinRT::UI;
    
  6. Dans le code exécuté au démarrage (par exemple, dans le constructeur de la page), instanciez l’objet InterstitialAd et connectez les gestionnaires d’événements correspondant aux événements de l’objet. Dans l’exemple suivant, InterstitialAdSamplesCpp est l’espace de noms de votre projet ; modifiez ce nom au besoin pour votre code.

    m_interstitialAd = ref new InterstitialAd();         
    m_interstitialAd->AdReady += ref new Windows::Foundation::EventHandler<Platform::Object ^>
        (this, &InterstitialAdSamplesCpp::DirectXPage::OnAdReady);
    m_interstitialAd->Completed += ref new Windows::Foundation::EventHandler<Platform::Object ^>
        (this, &InterstitialAdSamplesCpp::DirectXPage::OnAdCompleted);
    m_interstitialAd->Cancelled += ref new Windows::Foundation::EventHandler<Platform::Object ^>
        (this, &InterstitialAdSamplesCpp::DirectXPage::OnAdCancelled);
    m_interstitialAd->ErrorOccurred += ref new
        Windows::Foundation::EventHandler<Microsoft::Advertising::WinRT::UI::AdErrorEventArgs ^>
        (this, &InterstitialAdSamplesCpp::DirectXPage::OnAdError);
    
  7. Si vous souhaitez afficher une publicité vidéo interstitielle : environ 30 à 60 secondes avant d’avoir besoin de la publicité interstitielle, utilisez la méthode RequestAd pour pré-extraire la publicité. Cela laisse suffisamment de temps pour demander et préparer la publicité avant qu’elle ne soit affichée. Veillez à spécifier AdType::Video pour le type d’annonce.

    m_interstitialAd->RequestAd(AdType::Video, myAppId, myAdUnitId);
    

    Si vous souhaitez afficher une bannière publicitaire interstitielle : environ 5 à 8 secondes avant que vous n’ayez besoin de l’annonce, utilisez la méthode RequestAd pour pré-extraire la publicité. Cela laisse suffisamment de temps pour demander et préparer la publicité avant qu’elle ne soit affichée. Veillez à spécifier AdType::D isplay pour le type d’annonce.

    m_interstitialAd->RequestAd(AdType::Display, myAppId, myAdUnitId);
    
  8. Dans votre code, là où vous souhaitez afficher la publicité, vérifiez que l’objet InterstitialAd est prêt à être affiché, puis affichez-le à l’aide de la méthode Show.

    if ((InterstitialAdState::Ready == m_interstitialAd->State))
    {
        m_interstitialAd->Show();
    }
    
  9. Définissez les gestionnaires d’événements pour l’objet InterstitialAd.

    void DirectXPage::OnAdReady(Object^ sender, Object^ args)
    {
        // Your code goes here.
    }
    
    
    void DirectXPage::OnAdCompleted(Object^ sender, Object^ args)
    {
        // Your code goes here.
    }
    
    void DirectXPage::OnAdCancelled(Object^ sender, Object^ args)
    {
        // Your code goes here.
    }
    
    void DirectXPage::OnAdError(Object^ sender, Microsoft::Advertising::WinRT::UI::AdErrorEventArgs^ args)
    {
        // Your code goes here.
    }
    
  10. Générez et testez votre application pour vérifier qu’elle affiche les publicités de test.

Publier votre application avec des publicités en direct

  1. Assurez-vous que votre utilisation des publicités interstitielles dans votre application suit nos instructions pour les publicités interstitielles.

  2. Dans l’Espace partenaires, accédez à la page Publicités dans l’application et créez une unité publicitaire. Pour le type d’unité publicitaire, choisissez Interstitiel vidéo ou Bannière interstitielle, en fonction du type d’annonces publicitaires que vous affichez. Prenez note de l’ID d’unité publicitaire et de l’ID de l’application.

    Notes

    Les valeurs d’ID d’application pour les unités publicitaires de test et les unités publicitaires UWP actives ont différents formats. Les valeurs d’ID d’application de test sont des GUID. Lorsque vous créez une unité publicitaire UWP active dans l’Espace partenaires, la valeur de l’ID d’application pour l’unité publicitaire correspond toujours à l’ID store de votre application (un exemple de valeur d’ID du Store ressemble à 9NBLGGH4R315).

  3. Vous pouvez éventuellement activer la médiation publicitaire pour InterstitialAd en configurant les paramètres dans la section Paramètres de médiation de la page Publicités dans l’application . La médiation publicitaire vous permet d’optimiser vos revenus publicitaires et vos fonctionnalités de promotion d’applications en affichant des publicités provenant de plusieurs réseaux publicitaires, y compris des publicités provenant d’autres réseaux publicitaires payants tels que Taboola et Smaato, ainsi que des publicités pour les campagnes de promotion des applications Microsoft.

  4. Dans votre code, remplacez les valeurs d’unité publicitaire de test par les valeurs actives que vous avez générées dans l’Espace partenaires.

  5. Envoyez votre application dans le Windows Store à l’aide de l’Espace partenaires.

  6. Passez en revue vos rapports de performances publicitaires dans l’Espace partenaires.

Gérer les unités publicitaires pour plusieurs contrôles publicitaires interstitiels dans votre application

Vous pouvez utiliser plusieurs contrôles InterstitialAd dans une seule application. Dans ce scénario, nous vous recommandons d’affecter une unité publicitaire différente à chaque contrôle. L’utilisation de différentes unités publicitaires pour chaque contrôle vous permet de configurer séparément les paramètres de médiation et d’obtenir des données de création de rapports discrètes pour chaque contrôle. Cela permet également à nos services de mieux optimiser les publicités que nous servons à votre application.

Important

Vous pouvez utiliser chaque unité publicitaire dans une seule application. Si vous utilisez une unité publicitaire dans plusieurs applications, les publicités ne seront pas diffusées pour cette unité publicitaire.