使用房屋广告作为Microsoft AdControl(UWP)的备份

使用房屋广告作为Microsoft AdControl(UWP)的备份,uwp,ads,windows-dev-center,Uwp,Ads,Windows Dev Center,AdMediator允许为房屋广告指定0权重(备份模式),在这种情况下(据我所知),房屋广告仅在其他广告不可用时出现。在我的位置上,这种情况经常发生,以至于看到一些东西而不是空白点是很有意义的 我想使用Store Services SDK中的Microsoft AdMeditor实现这个想法。我打算这样做: using MsAdControl = Microsoft.Advertising.WinRT.UI.AdControl; ...... private MsAdControl crea

AdMediator允许为房屋广告指定0权重(备份模式),在这种情况下(据我所知),房屋广告仅在其他广告不可用时出现。在我的位置上,这种情况经常发生,以至于看到一些东西而不是空白点是很有意义的

我想使用Store Services SDK中的Microsoft AdMeditor实现这个想法。我打算这样做:

using MsAdControl = Microsoft.Advertising.WinRT.UI.AdControl;

......

private MsAdControl createMicrosoftAdControl() {
     MsAdControl msAdControl = new MsAdControl();
     msAdControl.AdRefreshed += OnMsAdRefreshed;
     msAdControl.ErrorOccurred += OnMsBannerError;

     msAdControl.ApplicationId = msBannerAppId;
     msAdControl.AdUnitId = msBannerUintId;
     msAdControl.AutoRefreshIntervalInSeconds = 30;
     msAdControl.IsAutoRefreshEnabled = true;
      ...... 

     return msAdControl;
 }

  // Callbacks
 private void OnMsAdRefreshed(object sender, RoutedEventArgs e) {
     var adControl = (MsAdControl)sender;
     adControl.AdUnitId = msBannerUintId;   // Revert to other ads
     .......
}

 private void OnMsBannerError(object sender, AdErrorEventArgs e) {
     var adControl = (MsAdControl)sender;

     if (adControl.AdUnitId != msBannerUintId) 
         adControl.AdUnitId = msBannerUintId;   // Revert to other ads
     else 
     if (e.ErrorCode == MsErrCode.NoAdAvailable) {
         adControl.AdUnitId = msBannerHouseUintId;   // Use house ads
         adControl.Refresh();
     }

     .............  
}
我得到了错误代码RefereshNotAllowed

事实上,广告之间至少30秒的超时是有意义的。但是,如果装置id发生变化,则应将其重置

我试图重新创建控件,希望这可以重置超时。不可能-看起来超时是静态处理的


还有其他想法吗?

你可以参考。当使用手动刷新时,根据设备的当前数据连接,仅应在至少30到60秒后调用refresh.Extactly。手动刷新没有帮助。为家庭广告设置单独的AdControl也没有帮助。唯一的希望是,微软要么升级AdControl以允许指定备份广告源,要么使用此功能发布AdMediator for UWP。