代码之家  ›  专栏  ›  技术社区  ›  XFox

如何添加本地add UWP的多个实例?

  •  1
  • XFox  · 技术社区  · 6 年前

    我有一个UWP应用程序,它显示了几个视频目录。它们位于不同的页面中。为此,我创建了一个 NativeAdV2 控制:

    public sealed partial class CardAdvert : UserControl
    {
        NativeAdsManagerV2 manager = new NativeAdsManagerV2("d25517cb-12d4-4699-8bdc-52040c712cab", "test");
        NativeAdV2 advert;
        public CardAdvert()
        {
            InitializeComponent();
            manager.AdReady += AdReady;
            manager.RequestAd();
        }
    
        private void AdReady(object sender, NativeAdReadyEventArgs e)
        {
            advert = e.NativeAd;
            Initialize();
            e.NativeAd.RegisterAdContainer(this);    //Exception is here
        }
    
        public void Initialize()
        {
            title.Text = advert.Title;
            image.Source = new BitmapImage(advert.MainImages.First().Url.ToUri());
            if (advert.AdIcon == null)
                contentGrid.ColumnDefinitions[0].Width = new GridLength(0);
            else
                icon.ProfilePicture = advert.AdIcon.Source;
    
            if (string.IsNullOrWhiteSpace(advert.SponsoredBy))
                sponsor.Visibility = Visibility.Collapsed;
            else
                sponsor.Text = advert.SponsoredBy;
    
            if (!string.IsNullOrWhiteSpace(advert.Rating))
                info.Text += $" {advert.Rating}";
    
            if (string.IsNullOrWhiteSpace(advert.CallToActionText) && string.IsNullOrWhiteSpace(advert.Price))
                desc.Visibility = Visibility.Collapsed;
            else if (!string.IsNullOrWhiteSpace(advert.CallToActionText))
                desc.Text = advert.CallToActionText;
            else
                desc.Text = advert.Price;
        }
    } 
    

    但无论我在哪里创建它(即使是在不同的页面上),在第二次或第三次时,它都会抛出一个异常 e.NativeAd.RegisterAdContainer(this) :

    Unhandled exception at 0x082A1330 (Windows.UI.Xaml.dll) in FoxTube.exe:
    0xC000027B: An application-internal exception has occurred (parameters: 0x1E9F4608, 0x00000003)
    

    无论是在MSDN论坛或其他地方,还是在 NativeAdV2

    0 回复  |  直到 6 年前
        1
  •  0
  •   XFox    5 年前

    实际上,我不知道为什么微软不想修复这个问题,但正如他们所说,它可以在早期的版本上工作。你只需要把你的目标和最低版本降到17134就可以了。你也可以使用 Windows UI Library