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

我发现了类似的问题(主要是Windows Phone 7)的一些分散的回应,但是想发布包含Windows Phone 8广告的所有要求的答案。 我在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这样的服务中显示一个备用广告栏。

作者: dawei

【声明】:永州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部