Share via


Codice di esempio per annunci intermedi in C#

Avviso

A partire dal 1° giugno 2020, la piattaforma Microsoft Ad Monetization per le app Windows UWP verrà arrestata. Ulteriori informazioni

Questo argomento fornisce un esempio di codice completo per un'app UWP (Universal Windows Platform) C# e XAML app di base che visualizza un annuncio video intermedio. Per istruzioni dettagliate che illustrano come configurare il progetto per l'uso di questo codice, vedere Annunci intermedi. Per un progetto di esempio completo, vedere gli esempi di annunci in GitHub.

Esempio di codice

Questa sezione mostra il contenuto dei file MainPage.xaml e MainPage.xaml.cs in un'app di base che visualizza un annuncio intermedio. Per usare questi esempi, copiare il codice in un progetto App vuota (Universal Windows) Visual C# in Visual Studio.

Questa app di esempio usa due pulsanti per richiedere e avviare un annuncio intermedio. Sostituire i valori dei campi myAppId e myAdUnitId con i valori live del Centro per i partner prima di inviare l'app allo Store. Per ulteriori informazioni, vedere Impostare le unità pubblicitarie nell'app.

Nota

Per modificare questo esempio al fine di visualizzare un banner pubblicitario intermedio anziché un annuncio video intermedio, passare il valore AdType.Display al primo parametro del metodo RequestAd anziché AdType.Video. Per ulteriori informazioni, vedere Annunci intermedi.

MainPage.xaml

<Page
    x:Class="InterstitialAdSamplesCSharp.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:InterstitialAdSamplesCSharp"
    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}">
        <Button Name="requestAdButton" Content="Request ad" Margin="37,244,0,364" Click="requestAdButton_Click"/>
        <Button Name="showAdButton" Content="Show ad" Margin="37,309,0,299" Click="showAdButton_Click"/>
    </Grid>
</Page>

MainPage.xaml.cs

using System;
using System.Collections.Generic;
using System.IO;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Microsoft.Advertising.WinRT.UI;

namespace InterstitialAdSamplesCSharp
{
    public sealed partial class MainPage : Page
    {
        // Assign myAppId and myAdUnitId to test values. Replace these values with live values 
        // from Dev Center before you submit your app to the Store.
        InterstitialAd myInterstitialAd = null;
        string myAppId = "d25517cb-12d4-4699-8bdc-52040c712cab";
        string myAdUnitId = "test";

        public MainPage()
        {
            this.InitializeComponent();

            myInterstitialAd = new InterstitialAd();
            myInterstitialAd.AdReady += MyInterstitialAd_AdReady;
            myInterstitialAd.ErrorOccurred += MyInterstitialAd_ErrorOccurred;
            myInterstitialAd.Completed += MyInterstitialAd_Completed;
            myInterstitialAd.Cancelled += MyInterstitialAd_Cancelled;
        }

        // This method requests an interstitial ad when the "Request ad" button is clicked. In a real app, 
        // you should request the interstitial ad close to when you think it will be shown, but with 
        // enough advance time to make the request and prepare the ad (say 30 seconds to a few minutes).
        // To show an interstitial banner ad instead of an interstitial video ad, replace AdType.Video 
        // with AdType.Display.
        private void requestAdButton_Click(object sender, RoutedEventArgs e)
        {
            myInterstitialAd.RequestAd(AdType.Video, myAppId, myAdUnitId);
        }

        // This method attempts to show the interstitial ad when the "Show ad" button is clicked.
        private void showAdButton_Click(object sender, RoutedEventArgs e)
        {
            if (InterstitialAdState.Ready == myInterstitialAd.State)
            {
                myInterstitialAd.Show();
            }
        }

        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.
        }
    }
}