AdControl в XAML и .NET

Предупреждение

С 1 июня 2020 г. платформа монетизации Microsoft Ad для приложений UWP для Windows будет закрыта. Подробнее

В этом пошаговом руководстве показано, как использовать класс AdControl для отображения рекламных баннеров в приложении XAML универсальная платформа Windows (UWP) для Windows 10 или Windows 11, реализованных с помощью C#.

Примечание

Microsoft Advertising SDK также поддерживает приложения XAML, которые реализуются с использованием C++. Полный пример с проектом см. в разделе примеры рекламы на GitHub.

Предварительные требования

Интеграция собственного баннера в приложение

  1. В Visual Studio откройте свой проект либо создайте новый.

    Примечание

    Если вы используете существующий проект, откройте файл Package.appxmanifest в проекте и убедитесь, что возможность Интернет (клиент) выбрана. Вашему приложению эта возможность требуется для получения тестовых объявлений и настоящей рекламы.

  2. Если ваш проект направлен на работу на Любом ЦП, обновите его, чтобы он использовал результаты сборки, предназначенные для определенной архитектуры (например, x86). Если ваш проект направлен на работу на Любом ЦП, вам не удастся надлежащим образом добавить ссылку на Microsoft Advertising в приведенных ниже шагах. Дополнительные сведения см. в разделе Ошибки, вызванные указанием варианта "Любой ЦП" как целевого в вашем проекте.

  3. Добавьте ссылку на Microsoft Advertising SDK в свой проект.

    1. В Обозревателе решений щелкните правой кнопкой мыши элемент Ссылки и выберите Добавить ссылку....
    2. В Диспетчере ссылок разверните раздел Универсальная платформа Windows, нажмите Расширения и выберите флажок рядом с SDK Microsoft Advertising для XAML (версия 10.0).
    3. В диспетчере ссылок нажмите "ОК".
  4. Измените код XAML для страницы, где вы размещаете рекламу, для включения пространства имен Microsoft.Advertising.WinRT.UI. Например, в образце приложения по умолчанию, созданного Visual Studio (с названием MyAdFundedWindows10AppXAML в этом приложении), страницей XAML является MainPage.xaml.

    Раздел Page файла MainPage.xaml, созданного Visual Studio, содержит следующий код.

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

    Добавьте ссылку на пространство имен Microsoft.Advertising.WinRT.UI, чтобы раздел Page файла MainPage.xaml содержал следующий код.

    <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. В раздел под тегом Grid добавьте код для AdControl. Назначьте свойства AdUnitId и ApplicationIdзначениям тестового блока объявлений. Также настройте высоту и ширину элемента управления, чтобы он был одним из поддерживаемых размеров рекламных баннеров.

    Примечание

    Каждый элемент AdControl имеет соответствующую группу объявлений, используемую нашими службами для передачи рекламы этому элементу управления, и каждая группа объявлений состоит из идентификатора группы объявлений и идентификатора приложения. На этих этапах вы задаете тестовые значения идентификатора группы объявлений и идентификатора приложения для своего элемента управления. Эти тестовые значения можно использовать только в тестовой версии приложения. Перед публикацией приложения в Магазине необходимо заменить эти тестовые значения динамическими значениями из Центра партнеров.

    Полностью код раздела под тегом Grid выглядит следующим образом.

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

    Полный код для файла MainPage.xaml должен выглядеть так.

    <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. Скомпилируйте и запустите приложение, чтобы увидеть его с объявлением.

Выпуск приложения с реальной рекламой

  1. Убедитесь, что использование вами рекламных баннеров в своем приложении соответствует нашим рекомендациям для рекламных баннеров.

  2. В Центре партнеров перейдите на страницу объявления в приложении и создайте рекламный блок. В качестве типа группы объявлений укажите Баннер. Запомните идентификатор группы объявлений и идентификатор приложения.

    Примечание

    Значения идентификатора приложения для тестовых рекламных блоков и реальных рекламных блоков UWP имеют разные форматы. Тестовые значения идентификатора приложения представляют собой элементы GUID. При создании динамической рекламной группы UWP в Центре партнеров значение идентификатора приложения для рекламной группы всегда совпадает с идентификатором магазина для вашего приложения (пример значения идентификатора Магазина выглядит как 9NBLGGH4R315).

  3. Вы можете при необходимости включить рекламный посредник для AdControl, настроив параметры в разделе Параметры посредника на странице Реклама в приложении. С помощью рекламного посредника можно максимально увеличить выручку от рекламы и возможности ее продвижения, отображая рекламу от нескольких рекламных сетей, в том числе других платных рекламных сетей, например Taboola и Smaato, и рекламных объявлений для кампаний по продвижению приложения Microsoft.

  4. В коде замените значения тестового рекламного блока (ApplicationId и AdUnitId) динамическими значениями, созданными в Центре партнеров.

  5. Отправьте приложение в Магазин с помощью Центра партнеров.

  6. Просмотрите отчеты о результативности рекламы в Центре партнеров.

Управление группами объявлений для нескольких элементов управления рекламой в приложении

Вы можете использовать несколько объектов AdControl в одном приложении (например, каждая страница в вашем приложении может содержать свой объект AdControl). В этом случае рекомендуется назначить каждому элементу управления свою группу объявлений. Использование различных групп объявлений для каждого элемента управления позволяет по отдельности настраивать параметры посредника и получать раздельные данные отчетности для каждого элемента управления. Это также позволяет нашим службам лучше оптимизировать рекламные объявления, которые мы передаем вашему приложению.

Важно!

Одну группу объявлений можно использовать только в одном приложении. Если использовать одну группу объявлений в нескольких приложениях, объявления для этой группы объявлений предоставляться не будут.