Windows Phone – 在Windows Phone 8中设置广告

前端之家收集整理的这篇文章主要介绍了Windows Phone – 在Windows Phone 8中设置广告前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我发现了类似的问题(主要是Windows Phone 7)的一些分散的回应,但是想发布包含Windows Phone 8广告的所有要求的答案。

我在Windows Phone 8中设置了一个广告问题。每次运行模拟器时,我遇到了应用程序运行的问题,但广告不会显示

该应用程序运行正常,但我注意到输出控制台中记录了以下异常:

An exception of type 'Microsoft.Advertising.Shared.AdException' occurred in Microsoft.Advertising.Mobile.DLL and wasn't handled before a managed/native boundary

广告在我正在开发的一个应用程序中显示良好,但不是另一个,异常不显示任何有用的信息。

我想出了如何捕获异常,看看是什么问题实际上(这是我的清单文件中缺少的大量功能)。为了尝试从AdControl捕获异常并获取我需要的数据,我将以下内容添加到我的页面

捕捉广告控制错误

public MainPage()
    {
        InitializeComponent();

        AdUnit.ErrorOccurred += AdUnit_ErrorOccurred;
    }

    void AdUnit_ErrorOccurred(object sender,Microsoft.Advertising.AdErrorEventArgs e)
    {
        throw new NotImplementedException();
    }

这表明我错失了MEDIALIB许可和PHONEDIALER许可。我进行了一些测试,并确定任何运行广告的应用都需要以下权限:

所需权限

ID_CAP_IDENTIFY_USER
ID_CAP_MEDIALIB_PHOTO
ID_CAP_NETWORKING
ID_CAP_PHONEDIALER
ID_CAP_WEBBROWSERCOMPONENT

设置参数

从其他帖子中我已经阅读了,确保将广告单元的宽度/高度设置为480/80(如果是自动的,并且没有最小分界符,那么广告将不会显示),这一点也很重要。

确保在模拟器中查看它只能使用test ApplicationId and AdUnitId. PubCenter凭据只能在已发布的应用程序中工作。

<UI:AdControl x:Name="AdUnit" Height="80" Width="480"
    AdUnitId="Image480_80" ApplicationId="test_client" />

隐藏或交换失败/清空广告控制

如果您的AdControl失败,您的广告将留下大量的空白空间。您可以隐藏它或与另一个网络的广告交换。为了做到这一点,捕获如上所示的异常(AdUnit_ErrorOccurred)并添加了以下内容

隐藏:

AdUnit.Height = 0;
AdUnit.Visibility = System.Windows.Visibility.Collapsed;

设置可见性本身并不起作用,高度也必须设置为0。

交换广告:

而不是隐藏AdControl,您可以从http://www.adduplex.com这样的服务中显示一个备用广告栏。

猜你在找的Windows相关文章