2

我以这种方式设置了 Windows 8 AdControl:

<div id="adControl" style="width: 728px; height: 90px; border: solid 1px red; visibility:visible;"
    data-win-control="MicrosoftNSJS.Advertising.AdControl"
    data-win-options="{applicationId: 'abc-1234', adUnitId: '12345'}">
</div>

我知道控件正在显示,因为我可以看到它周围有一条红线。但是,我没有看到任何广告正在呈现(广告已注册)。我在使用 XAML 的 Metro 应用程序中具有相同的控件,并且我看到广告很好。

使用 HTML5 的广告是否有我遗漏的额外技巧?

编辑:

SDK 包含在项目中。

4

2 回答 2

1

问题的原因来自许多不同的事物。基本上,您应该跟进一些重要的细节,尤其是最后一个项目符号:

  • 您必须为AdControl. 未能指定 Height 和 Width 属性,或者将它们设置为 auto,将导致沮丧的泪水。我推荐 80 像素高和 480 像素宽,因为这是 Microsoft 提供的广告的原生尺寸。
  • 似乎您不能AdControls在同一页面上有两个,或者至少不能在同一个父元素中。第二个会崩溃。可能有办法解决这个问题,但我在构建演示应用程序时发现了它,并不想寻求解决方案。
  • 您必须必须在WMAppManifest.xml文件中指定某些功能。由于我正在升级我的应用程序,因此我没有声明一些较新的功能。造成所有麻烦的是ID_CAP_IDENTITY_USER。控件正常运行需要以下功能:

    <Capabilities>
        <Capability Name="ID_CAP_IDENTITY_USER"/>
        <Capability Name="ID_CAP_MEDIALIB"/>
        <Capability Name="ID_CAP_NETWORKING"/>
        <Capability Name="ID_CAP_PHONEDIALER"/>
        <Capability Name="ID_CAP_WEBBROWSERCOMPONENT"/>
    </Capabilities>
    

在此处查看更多信息

于 2013-06-11T14:22:41.317 回答
0

好的 - 最后我完全不小心想到了这一点。一个明显的错误,但使用 Javascript 的“无错误”策略很难发现!问题是我没有包含脚本:

<script src="/MSAdvertisingJS/ads/ad.js"></script>

我添加了参考,但我没想到它也需要这个。

于 2013-06-21T13:40:57.453 回答