Interstitialwerbung

Warnung

Ab dem 1. Juni 2020 wird die Microsoft Ad Monetization Platform für Windows UWP-Apps heruntergefahren. Weitere Informationen

In dieser exemplarischen Vorgehensweise wird gezeigt, wie Sie Interstitialanzeigen in Universelle Windows-Plattform-Apps und -Spiele (UWP) für Windows 10 und Windows 11 einschließen. Vollständige Beispielprojekte, die das Hinzufügen von Interstitialwerbung zu JavaScript-/HTML- und XAML-Apps unter Verwendung von C# und C++ zeigen, finden Sie in den Anzeigenbeispielen auf GitHub.

Was ist Interstitialwerbung?

Im Gegensatz zu Standardbanneranzeigen, die auf einen Teil einer Benutzeroberfläche in einer App oder einem Spiel beschränkt sind, werden Interstitialanzeigen auf dem gesamten Bildschirm angezeigt. In Spielen werden häufig zwei grundlegende Formen verwendet.

  • Bei Paywall-Anzeigen muss der Benutzer eine Anzeige in regelmäßigen Intervallen ansehen. Dies findet beispielsweise zwischen Spiellevels statt:

    whatisaninterstitial

  • Mit Rewards-basierten Anzeigen sucht der Benutzer explizit einen Vorteil, z. B. einen Hinweis oder zusätzliche Zeit, um das Level abzuschließen, und initialisiert die Anzeige über die Benutzeroberfläche der App.

Wir bieten zwei Arten von Interstitialanzeigen, die sie in Ihren Apps und Spielen verwenden können: interstitiale Videoanzeigen und interstitiale Banneranzeigen.

Hinweis

Die API für Interstitialanzeigen verarbeitet keine Benutzeroberfläche, außer zum Zeitpunkt der Videowiedergabe. Informieren Sie sich in den bewährten Methoden für Interstitialwerbung über Richtlinien für das, was Sie tun und was Sie vermeiden sollten, wenn Sie sich überlegen, wie Sie Interstitialwerbung in Ihre App integrieren können.

Voraussetzungen

Integrieren einer Interstitialanzeige in Ihre App

Befolgen Sie zum Anzeigen von Interstitialwerbung in Ihrer App die Anweisungen für den jeweiligen Projekttyp:

XAML/.NET

Dieser Abschnitt enthält Beispiele für C#. Visual Basic und C++ werden jedoch ebenfalls für XAML-/.NET-Projekte unterstützt. Ein vollständiges C#-Codebeispiel finden Sie unter Beispielcode für Interstitialwerbung in C#.

  1. Öffnen Sie Ihr Projekt in Visual Studio.

    Hinweis

    Wenn Sie ein vorhandenes Projekt verwenden, öffnen Sie die Datei Package.appxmanifest in Ihrem Projekt, und stellen Sie sicher, dass die Funktion Internet (Client) ausgewählt ist. Ihre App benötigt diese Funktion, um Testanzeigen und Liveanzeigen zu empfangen.

  2. Sollte in Ihrem Projekt die Zielplattform ANYCPU definiert sein, müssen Sie eine architekturspezifische Buildausgabe verwenden (z. B. X86) und das Projekt entsprechend aktualisieren. Sollte in Ihrem Projekt die Zielplattform ANYCPU definiert sein, können Sie bei den folgenden Schritten keinen Verweis auf die Microsoft Advertising-Bibliotheken hinzufügen. Weitere Informationen finden Sie unter Referenzfehler, die durch die Ausrichtung auf eine beliebige CPU (Any CPU) in Ihrem Projekt verursacht werden.

  3. Fügen Sie einen Verweis auf die Microsoft Advertising-SDK in Ihrem Projekt hinzu:

    1. Klicken Sie im fenster Projektmappen-Explorer mit der rechten Maustaste auf Verweise, und wählen Sie Verweis hinzufügen... aus.
    2. Erweitern Sie im Verweis-Manager den Knoten Universal Windows, klicken Sie auf Erweiterungen, und wählen Sie dann das Kontrollkästchen neben Microsoft Advertising SDK für XAML (Version 10.0).
    3. Klicken Sie im Verweis-Manager auf „OK“.
  4. Fügen Sie in der geeigneten Codedatei in Ihrer App (z. B. in „MainPage.xaml.cs“ oder einer Codedatei für eine andere Seite) den folgenden Namespaceverweis hinzu.

    using Microsoft.Advertising.WinRT.UI;
    
  5. Deklarieren Sie an einer geeigneten Stelle in Ihrer App (z. B. in MainPage oder einer anderen Seite) ein InterstitialAd-Objekt und mehrere Zeichenfolgenfelder, die die Anwendungs-ID und Anzeigeneinheits-ID für die Interstitialwerbung darstellen. Im folgenden Codebeispiel werden die myAppId Felder und myAdUnitId den Testwerten für Interstitialanzeigen zugewiesen.

    Hinweis

    Jede InterstitialAd verfügt über eine entsprechende Anzeigeneinheit , die von unseren Diensten verwendet wird, um Anzeigen für das Steuerelement zu schalten, und jede Anzeigeneinheit besteht aus einer Anzeigeneinheits-ID und Anwendungs-ID. In diesen Schritten weisen Sie Ihrem Steuerelement Testanzeigen-Einheiten-ID und Anwendungs-ID-Werte zu. Diese Testwerte können nur in einer Testversion Ihrer App verwendet werden. Bevor Sie Ihre App im Store veröffentlichen, müssen Sie diese Testwerte durch Livewerte aus Partner Center ersetzen.

    InterstitialAd myInterstitialAd = null;
    string myAppId = "d25517cb-12d4-4699-8bdc-52040c712cab";
    string myAdUnitId = "test";
    
  6. Instanziieren Sie in Code, der beim Start ausgeführt wird (z. B. im Konstruktor der Seite) das InterstitialAd-Objekt, und verbinden Sie Ereignishandler für die Ereignisse des Objekts.

    myInterstitialAd = new InterstitialAd();
    myInterstitialAd.AdReady += MyInterstitialAd_AdReady;
    myInterstitialAd.ErrorOccurred += MyInterstitialAd_ErrorOccurred;
    myInterstitialAd.Completed += MyInterstitialAd_Completed;
    myInterstitialAd.Cancelled += MyInterstitialAd_Cancelled;
    
  7. Wenn Sie eine Interstitialvideoanzeige anzeigen möchten: Ungefähr 30 bis 60 Sekunden bevor Sie die Anzeige benötigen, verwenden Sie die RequestAd-Methode , um die Anzeige vorab abzurufen. Dadurch bleibt genügend Zeit, um die Anzeige anzufordern und vorzubereiten, bevor sie angezeigt werden soll. Stellen Sie sicher, dass Sie AdType.Video für den Anzeigentyp angeben.

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

    Wenn Sie eine Interstitialbanneranzeige anzeigen möchten: Verwenden Sie etwa 5 bis 8 Sekunden, bevor Sie die Anzeige benötigen, die RequestAd-Methode , um die Anzeige vorab abzurufen. Dadurch bleibt genügend Zeit, um die Anzeige anzufordern und vorzubereiten, bevor sie angezeigt werden soll. Stellen Sie sicher, dass Sie AdType.Display für den Anzeigentyp angeben.

    myInterstitialAd.RequestAd(AdType.Display, myAppId, myAdUnitId);
    
  8. Vergewissern Sie sich an dem Punkt im Code, an dem Sie das Interstitialvideo oder die Interstitialbanneranzeige anzeigen möchten, dass die InterstitialAd bereit ist, und zeigen Sie sie dann mithilfe der Show-Methode an.

    if (InterstitialAdState.Ready == myInterstitialAd.State)
    {
        myInterstitialAd.Show();
    }
    
  9. Definieren Sie die Ereignishandler für das InterstitialAd-Objekt.

    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. Erstellen und testen Sie Ihre App, um zu überprüfen, ob sie Testanzeigen anzeigt.

HTML/JavaScript

In den folgenden Anweisungen wird davon ausgegangen, dass Sie ein universelles Windows-Projekt für JavaScript in Visual Studio erstellt haben und eine bestimmte CPU als Ziel haben. Ein vollständiges Codebeispiel finden Sie unter Beispielcode für Interstitialwerbung in JavaScript.

  1. Öffnen Sie Ihr Projekt in Visual Studio.

  2. Sollte in Ihrem Projekt die Zielplattform ANYCPU definiert sein, müssen Sie eine architekturspezifische Buildausgabe verwenden (z. B. X86) und das Projekt entsprechend aktualisieren. Sollte in Ihrem Projekt die Zielplattform ANYCPU definiert sein, können Sie bei den folgenden Schritten keinen Verweis auf die Microsoft Advertising-Bibliotheken hinzufügen. Weitere Informationen finden Sie unter Referenzfehler, die durch die Ausrichtung auf eine beliebige CPU (Any CPU) in Ihrem Projekt verursacht werden.

  3. Fügen Sie einen Verweis auf die Microsoft Advertising-SDK in Ihrem Projekt hinzu:

    1. Klicken Sie im fenster Projektmappen-Explorer mit der rechten Maustaste auf Verweise, und wählen Sie Verweis hinzufügen... aus.
    2. Erweitern Sie im Verweis-Manager den Knoten Universal Windows, klicken Sie auf Erweiterungen, und wählen Sie dann das Kontrollkästchen neben Microsoft Advertising SDK für JavaScript (Version 10.0).
    3. Klicken Sie im Verweis-Manager auf „OK“.
  4. Fügen Sie im <Kopfabschnitt> der HTML-Datei im Projekt nach den JavaScript-Verweisen des Projekts auf default.css und default.js den Verweis auf ad.js hinzu.

    <script src="//Microsoft.Advertising.JavaScript/ad.js"></script>
    
  5. Deklarieren Sie in einer JS-Datei in Ihrem Projekt ein InterstitialAd-Objekt und mehrere Felder, die die Anwendungs-ID und Anzeigeneinheits-ID für die Interstitialwerbung enthalten. Im folgenden Codebeispiel werden die applicationId Felder und adUnitId den Testwerten für Interstitialanzeigen zugewiesen.

    Hinweis

    Jede InterstitialAd verfügt über eine entsprechende Anzeigeneinheit , die von unseren Diensten verwendet wird, um Anzeigen für das Steuerelement zu schalten, und jede Anzeigeneinheit besteht aus einer Anzeigeneinheits-ID und Anwendungs-ID. In diesen Schritten weisen Sie Ihrem Steuerelement Testanzeigen-Einheiten-ID und Anwendungs-ID-Werte zu. Diese Testwerte können nur in einer Testversion Ihrer App verwendet werden. Bevor Sie Ihre App im Store veröffentlichen, müssen Sie diese Testwerte durch Livewerte aus Partner Center ersetzen.

    var interstitialAd = null;
    var applicationId = "d25517cb-12d4-4699-8bdc-52040c712cab";
    var adUnitId = "test";
    
  6. Instanziieren Sie in Code, der beim Start ausgeführt wird (z. B. im Konstruktor der Seite) das InterstitialAd-Objekt, und verbinden Sie Ereignishandler für das Objekt.

    interstitialAd = new MicrosoftNSJS.Advertising.InterstitialAd();
    interstitialAd.onErrorOccurred = errorOccurredHandler;
    interstitialAd.onAdReady = adReadyHandler;
    interstitialAd.onCancelled = cancelledHandler;
    interstitialAd.onCompleted = completedHandler;
    
  7. Wenn Sie eine Interstitialvideoanzeige anzeigen möchten: Ungefähr 30 bis 60 Sekunden bevor Sie die Anzeige benötigen, verwenden Sie die RequestAd-Methode , um die Anzeige vorab abzurufen. Dadurch bleibt genügend Zeit, um die Anzeige anzufordern und vorzubereiten, bevor sie angezeigt werden soll. Achten Sie darauf, interstitialAdType.video für den Anzeigentyp anzugeben.

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

    Wenn Sie eine Interstitialbanneranzeige anzeigen möchten: Verwenden Sie etwa 5 bis 8 Sekunden, bevor Sie die Anzeige benötigen, die RequestAd-Methode , um die Anzeige vorab abzurufen. Dadurch bleibt genügend Zeit, um die Anzeige anzufordern und vorzubereiten, bevor sie angezeigt werden soll. Achten Sie darauf, InterstitialAdType.display für den Anzeigentyp anzugeben.

    if (interstitialAd) {
        interstitialAd.requestAd(MicrosoftNSJS.Advertising.InterstitialAdType.display, applicationId, adUnitId);
    }
    
  8. Bestätigen Sie an der Stelle im Code, an der die Anzeige angezeigt werden soll, dass InterstitialAd bereit zum Einblenden ist, und zeigen Sie sie dann mit der Show-Methode an.

    if (interstitialAd && interstitialAd.state === MicrosoftNSJS.Advertising.InterstitialAdState.ready) {
        interstitialAd.show();
    }
    
  9. Definieren Sie die Ereignishandler für das InterstitialAd-Objekt.

    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. Erstellen und testen Sie Ihre App, um zu überprüfen, ob sie Testanzeigen anzeigt.

C++ (DirectX Interop)

In diesem Beispiel wird davon ausgegangen, dass Sie ein C++- DirectX- und XAML-App-Projekt (Universelles Windows) in Visual Studio erstellt haben und eine bestimmte CPU-Architektur als Ziel haben.  

  1. Öffnen Sie Ihr Projekt in Visual Studio.

  2. Fügen Sie einen Verweis auf die Microsoft Advertising-SDK in Ihrem Projekt hinzu:

    1. Klicken Sie im fenster Projektmappen-Explorer mit der rechten Maustaste auf Verweise, und wählen Sie Verweis hinzufügen... aus.
    2. Erweitern Sie im Verweis-Manager den Knoten Universal Windows, klicken Sie auf Erweiterungen, und wählen Sie dann das Kontrollkästchen neben Microsoft Advertising SDK für XAML (Version 10.0).
    3. Klicken Sie im Verweis-Manager auf „OK“.
  3. Deklarieren Sie in einer geeigneten Headerdatei für Ihre App (z. B. „DirectXPage.xaml.h“) ein InterstitialAd-Objekt und verwandte Ereignishandlermethoden.

    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. Deklarieren Sie in derselben Headerdatei mehrere Zeichenfolgenfelder, die die Anwendungs-ID und Anzeigeneinheits-ID für die Interstitialwerbung darstellen. Im folgenden Codebeispiel werden die myAppId Felder und myAdUnitId den Testwerten für Interstitialanzeigen zugewiesen.

    Hinweis

    Jede InterstitialAd verfügt über eine entsprechende Anzeigeneinheit , die von unseren Diensten verwendet wird, um Anzeigen für das Steuerelement zu schalten, und jede Anzeigeneinheit besteht aus einer Anzeigeneinheits-ID und Anwendungs-ID. In diesen Schritten weisen Sie Dem Steuerelement Test ad unit-ID und Anwendungs-ID-Werte zu. Diese Testwerte können nur in einer Testversion Ihrer App verwendet werden. Bevor Sie Ihre App im Store veröffentlichen, müssen Sie diese Testwerte durch Livewerte aus Partner Center ersetzen.

    Platform::String^ myAppId = L"d25517cb-12d4-4699-8bdc-52040c712cab";
    Platform::String^ myAdUnitId = L"test";
    
  5. Fügen Sie in der CPP-Datei, an der Stelle, an der Sie Code zum Anzeigen einer Interstitialwerbung hinzufügen möchten, den folgenden Namespaceverweis hinzu. In den folgenden Beispielen wird davon ausgegangen, dass Sie den Code der Datei „DirectXPage.xaml.cpp“ in Ihrer App hinzufügen.

    using namespace Microsoft::Advertising::WinRT::UI;
    
  6. Instanziieren Sie in Code, der beim Start ausgeführt wird (z. B. im Konstruktor der Seite) das InterstitialAd-Objekt, und verbinden Sie Ereignishandler für die Ereignisse des Objekts. Im folgenden Beispiel entspricht InterstitialAdSamplesCpp dem Namespace für Ihr Projekt. Ändern Sie diesen Namen nach Bedarf für Ihren 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. Wenn Sie eine interstitiale Videoanzeige anzeigen möchten: Ungefähr 30 bis 60 Sekunden bevor Sie die Interstitialanzeige benötigen, verwenden Sie die RequestAd-Methode , um die Anzeige vorab abzurufen. Dadurch bleibt genügend Zeit, um die Anzeige anzufordern und vorzubereiten, bevor sie angezeigt werden soll. Stellen Sie sicher, dass Sie AdType::Video als Anzeigentyp angeben.

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

    Wenn Sie eine interstitiale Banneranzeige anzeigen möchten: Ungefähr 5 bis 8 Sekunden bevor Sie die Anzeige benötigen, verwenden Sie die RequestAd-Methode , um die Anzeige vorab abzurufen. Dadurch bleibt genügend Zeit, um die Anzeige anzufordern und vorzubereiten, bevor sie angezeigt werden soll. Achten Sie darauf, adType::D isplay für den Anzeigentyp anzugeben.

    m_interstitialAd->RequestAd(AdType::Display, myAppId, myAdUnitId);
    
  8. Bestätigen Sie an der Stelle im Code, an der die Anzeige angezeigt werden soll, dass InterstitialAd bereit zum Einblenden ist, und zeigen Sie sie dann mit der Show-Methode an.

    if ((InterstitialAdState::Ready == m_interstitialAd->State))
    {
        m_interstitialAd->Show();
    }
    
  9. Definieren Sie die Ereignishandler für das InterstitialAd-Objekt.

    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. Erstellen und testen Sie Ihre App, um zu überprüfen, ob sie Testanzeigen anzeigt.

Freigeben Ihrer App mit Liveanzeigen

  1. Stellen Sie sicher, dass Ihre Verwendung von Interstitialanzeigen in Ihrer App unseren Richtlinien für Interstitialanzeigen entspricht.

  2. Wechseln Sie in Partner Center zur Seite In-App-Anzeigen , und erstellen Sie eine Anzeigeneinheit. Wählen Sie für den Anzeigeneinheitstyp Video interstitial oder Banner interstitial aus, je nachdem, welche Art der interstitialen Anzeige Sie anzeigen. Notieren Sie sich die Anzeigeneinheits-ID und die Anwendungs-ID.

    Hinweis

    Die Anwendungs-ID-Werte für Testanzeigeeinheiten und Live-UWP-Anzeigeneinheiten weisen unterschiedliche Formate auf. Testanwendungs-ID-Werte sind GUIDs. Wenn Sie eine Live-UWP-Anzeigeneinheit in Partner Center erstellen, stimmt der Anwendungs-ID-Wert für die Anzeigeneinheit immer mit der Store-ID für Ihre App überein (ein Beispielwert für die Store-ID sieht wie 9NBLGGH4R315 aus).

  3. Optional können Sie die Anzeigenvermittlung für InterstitialAd aktivieren, indem Sie die Einstellungen im Abschnitt Vermittlungseinstellungen auf der Seite In-App-Anzeigen konfigurieren. Mit der Anzeigenvermittlung können Sie Ihre Anzeigeneinnahmen und App-Promotion-Funktionen maximieren, indem Sie Anzeigen aus mehreren Anzeigennetzwerken anzeigen, einschließlich Anzeigen aus anderen kostenpflichtigen Werbenetzwerken wie Taboola und Smaato und Anzeigen für Microsoft-App-Promotionkampagnen.

  4. Ersetzen Sie in Ihrem Code die Werte der Testanzeigeneinheit durch die Livewerte, die Sie in Partner Center generiert haben.

  5. Übermitteln Sie Ihre App mithilfe von Partner Center an den Store.

  6. Überprüfen Sie Ihre Werbeleistungsberichte in Partner Center.

Verwalten von Anzeigeneinheiten für mehrere interstitiale Anzeigensteuerelemente in Ihrer App

Sie können mehrere InterstitialAd-Steuerelemente in einer einzelnen App verwenden. In diesem Szenario wird empfohlen, jedem Steuerelement eine andere Anzeigeneinheit zuzuweisen. Mithilfe unterschiedlicher Anzeigeneinheiten für jedes Steuerelement können Sie die Vermittlungseinstellungen separat konfigurieren und diskrete Berichtsdaten für jedes Steuerelement abrufen. Dies ermöglicht es unseren Diensten auch, die Anzeigen, die wir für Ihre App bereitstellen, besser zu optimieren.

Wichtig

Sie können jede Anzeigeneinheit nur in einer App verwenden. Wenn Sie eine Anzeigeneinheit in mehr als einer App verwenden, werden keine Anzeigen für diese Anzeigeneinheit geschaltet.