加入收藏 | 设为首页 | 会员中心 | 我要投稿 大庆站长网 (https://www.0459zz.com/)- 科技、智能边缘云、事件网格、云计算、站长网!
当前位置: 首页 > 综合聚焦 > Windows > 正文

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

发布时间:2020-09-19 11:58:58 所属栏目:Windows 来源:互联网
导读:我发现了类似的问题(主要是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这样的服务中显示一个备用广告栏。

(编辑:大庆站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读