Microsoft Windows Phone 8:AdControl广告显示在模拟器中但不在设备上显示

时间:2014-08-02 08:08:06

标签: windows-phone-8

这是我的代码

<UI:AdControl Height="80"
              Width="480"
              Margin="0,315,0,4"
              AdUnitId="Image480_80"
              ErrorOccurred="AdUnit_ErrorOccurred"
              ApplicationId="test_client"
              Visibility="Visible"
              Name="adControl1"
              />

这是我的代码

public MainPage()
{
    InitializeComponent();
    Thread.Sleep(1000);          
}

void AdUnit_ErrorOccurred(object sender, Microsoft.Advertising.AdErrorEventArgs e)
{
    System.Diagnostics.Debug.WriteLine("ad error " + e.Error.Message.ToString());
}

当我在模拟器中运行时,它会出现,但在设备中,它不会出现。

以及当我添加真实的ApplicationIdAdUnitId时(e.Error.Message =&#34;没有广告可用。&#34;)

1 个答案:

答案 0 :(得分:3)

您需要在Microsoft PubCenter中创建一个帐户,并通过在pubCenter中注册您的应用为您的应用创建广告单元,然后您将从Pub中心获取ApplicationID和AdUnitId。那么你的广告控制器代码应该是这样的,

<UI:AdControl ApplicationId="test_client" 
              AdUnitId="Image480_80" 
              HorizontalAlignment="Left" 
              Height="80" Margin="0,72,-24,0" 
              VerticalAlignment="Top" Width="480" 
              IsAutoCollapseEnabled="True" 
              IsAutoRefreshEnabled="True"/>

ApplicationIdAdUnitId替换为您从pubCenter获得的值。当您在模拟器上运行此操作时,pubCenter测试广告将在一段时间后出现。实际广告仅适用于设备。

请注意。即使您的ApplicationId和AdUnitId正确,具体取决于您的设备所在的位置,也不会显示广告。有时广告不可用,然后ErrorOccurred事件将会触发,如果您愿意,您可以捕获该事件并使用其他AdController(例如AdDuplex)在pubCenter广告不可用时展示广告。

从youtube上看看这个video如何使用AdDuplex以及如何将其与Microsoft Ad Control一起使用