„AdControl“ in XAML und .NET

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 die AdControl-Klasse verwenden, um Banneranzeigen in einer Universelle Windows-Plattform XAML-App (UWP) für Windows 10 oder Windows 11 anzuzeigen, die mit C# implementiert wird.

Hinweis

Das Microsoft Advertising-SDK unterstützt auch XAML-Apps, die mit C++ implementiert werden. Ein vollständiges Beispielprojekt finden Sie unter den Anzeigenbeispielen auf GitHub.

Voraussetzungen

Integrieren einer Banneranzeige in Ihre App

  1. Öffnen Sie in Visual Studio Ihr Projekt, oder erstellen Sie ein neues Projekt.

    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 Projektmappen-Explorer Fenster mit der rechten Maustaste auf Verweise, und wählen Sie Verweis hinzufügen...
    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. Ändern Sie das XAML für die Seite, in die Sie Werbung einbetten möchten, um den Microsoft.Advertising.WinRT.UI-Namespace miteinzubeziehen. Beispiel: Bei der Standard-Beispiel-App, die von Visual Studio generiert wird (in dieser App mit MyAdFundedWindows10AppXAML bezeichnet), heißt die XAML-Seite "MainPage.xaml".

    Der Bereich Seite der von Visual Studio generierten Datei „MainPage.xaml“ hat den folgenden Code.

    <Page
      x:Class="MyAdFundedWindows10AppXAML.MainPage"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:local="using:MyAdFundedWindows10AppXAML"
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
      mc:Ignorable="d">
      <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
      </Grid>
    </Page>
    

    Fügen Sie den Namespace-Verweis Microsoft.Advertising.WinRT.UI ein, sodass der Abschnitt Seite der Datei „MainPage.xaml“ den folgenden Code hat.

    <Page
      x:Class="MyAdFundedWindows10AppXAML.MainPage"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:local="using:MyAdFundedWindows10AppXAML"
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
      xmlns:UI="using:Microsoft.Advertising.WinRT.UI"
      mc:Ignorable="d">
      <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
      </Grid>
    </Page>
    
  5. Fügen Sie im Raster-Tag den Code für die AdControl ein. Weisen Sie den Werten der Testanzeigeeinheit die Eigenschaften AdUnitId und ApplicationId zu. Passen Sie auch die Höhe und Breite des Steuerelements an, sodass es eine der unterstützten Anzeigengrößen für Banneranzeigen ist.

    Hinweis

    Jedes AdControl verfügt über eine entsprechende Anzeigeneinheit , die von unseren Diensten verwendet wird, um Anzeigen für das Steuerelement bereitzustellen, und jede Anzeigeneinheit besteht aus einer Anzeigeneinheits-ID und einer 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.

    Das vollständige Raster-Tag sieht aus wie dieser Code.

    <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
        <UI:AdControl ApplicationId="3f83fe91-d6be-434d-a0ae-7351c5a997f1"
            AdUnitId="test"
            HorizontalAlignment="Left"
            Height="250"
            VerticalAlignment="Top"
            Width="300"/>
    </Grid>
    

    Der vollständige Code für die Datei „MainPage.xaml“ sollte wie folgt aussehen.

    <Page
      x:Class="MyAdFundedWindows10AppXAML.MainPage"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:local="using:MyAdFundedWindows10AppXAML"
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
      xmlns:UI="using:Microsoft.Advertising.WinRT.UI"
      mc:Ignorable="d">
      <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
            <UI:AdControl ApplicationId="3f83fe91-d6be-434d-a0ae-7351c5a997f1"
                  AdUnitId="test"
                  HorizontalAlignment="Left"
                  Height="250"
                  VerticalAlignment="Top"
                  Width="300"/>
      </Grid>
    </Page>
    
  6. Kompilieren und Ausführen der App, um sie mit einer Anzeige zu sehen

Freigeben Ihrer App mit Liveanzeigen

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

  2. Wechseln Sie in Partner Center zur Seite In-App-Anzeigen , und erstellen Sie eine Anzeigeneinheit. Geben Sie als Einheitentyp Banner an. 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 adControl 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 (ApplicationId und AdUnitId) 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 Anzeigensteuerelemente in Ihrer App

Sie können mehrere AdControl-Objekte in einer einzelnen App verwenden (z. B. kann jede Seite in Ihrer App ein anderes AdControl-Objekt hosten ). 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.