在共享的WinRT 8.1页面上显示广告

时间:2016-08-24 18:14:45

标签: c# xaml windows-phone-8.1 windows-store-apps windows-8.1-universal

我的通用应用程序(不是新的UWP10)几乎所有页面都在桌面和电话项目之间共享。这些页面是.Shared项目的一部分;与平台特定项目相同的命名空间。

现在,将AdControl控件添加到页面并不困难,但我不确定如何处理控件的特定于平台的方面,例如AdId,{ {1}}或Height。由于DevCenter中的广告分为两类(Tablet和PC / Mobile),我不知道应该输入什么作为ID参数。我也不确定如何在特定平台上处理宽度/高度调整。

对此最好的解决方案是什么?

1 个答案:

答案 0 :(得分:3)

  

由于DevCenter中的广告分为两类(Tablet&    PC /手机)我不知道应该输入什么作为ID参数。***

在信息中心中,您可以创建两类广告,一组用于PC /平板电脑。另一类用于移动设备,然后分别替换VS项目中的设备ID和应用ID。 enter image description here

  

我也不确定如何处理特定平台上的宽度/高度调整。***

首先请使用EasClientDeviceInformation class判断是手机还是PC平台,之后您可以在cs代码中以特定平台的形式添加Adcontrol,具体如下:

var clientDeviceInformation = new EasClientDeviceInformation();
var operatingSystem = clientDeviceInformation.OperatingSystem;
if (operatingSystem.Equals("WINDOWS"))
{
    //add Adcontrol for Windows
    // Programatically create an ad control. This must be done from the UI thread.
    var adControl = new AdControl();
    // Set the application id and ad unit id
    // The application id and ad unit id can be obtained from Dev Center.
    adControl.ApplicationId = "66ad92bf-3c62-4fa8-ad1c-421a56bf0231";
    adControl.AdUnitId = "309519";

    // Set the dimensions(windows)
    adControl.Width = 160;
    adControl.Height = 600;

    // Add event handlers if you want
    adControl.ErrorOccurred += OnErrorOccurred;
    adControl.AdRefreshed += OnAdRefreshed;
}
else
{
    //add Adcontrol for Windows phone
    var adControl = new AdControl();

    // Set the application id and ad unit id
    // The application id and ad unit id can be obtained from Dev Center.
    // See "Monetize with Ads" at https://msdn.microsoft.com/en-us/library/windows/apps/mt170658.aspx
    adControl.ApplicationId = "90b6905b-da20-42fc-bb86-c2b41140fe4e";
    adControl.AdUnitId = "311213";

    // Set the dimensions(windows)
    adControl.Width = 300;
    adControl.Height = 50;

    // Add event handlers if you want
    adControl.ErrorOccurred += OnErrorOccurred;
    adControl.AdRefreshed += OnAdRefreshed;
}

有关详情,请参阅官方样本Scenario2

此外,您需要确保此处的宽度和高度为supported size