Собственная реклама Xamarin.iOS Admob — Adloader.Delegate NULL

Я пытаюсь внедрить нативную рекламу в свое приложение Xamarin.ios. Мой Adloader.delegate всегда нулевой, и я не могу понять, как это решить.

Выходные данные приложения говорят: "Делегат не соответствует требуемому протоколу, GADNativeAdLoaderDelegate".

Используемый мной пакет nuget: Xamarin.Google.ios.MobileAds.

Это мой код:

      public ExploreController (IntPtr handle) : base (handle)
{
    adLoader = new AdLoader(
        "ca-app-pub-3940256099942544/3986624511",
        this,
        new AdLoaderAdType[] { AdLoaderAdType.Native },
        new AdLoaderOptions[] { new AdLoaderOptions() })
        { Delegate = new MyAdLoaderDelegate() };

    adLoader.LoadRequest(Request.GetDefaultRequest());
    
}



 public class MyAdLoaderDelegate : NSObject, IUnifiedNativeAdLoaderDelegate
 {

   public MyAdLoaderDelegate()
   {
   }

   public void DidReceiveUnifiedNativeAd(AdLoader adLoader, NativeAd nativeAd)
   {
       Debug.WriteLine("DidReceiveUnifiedNativeAd");
   }
   public void DidFailToReceiveAd(AdLoader adLoader, NSError error)
   {
      Debug.WriteLine("DidFailToReceiveAd");
      //base.DidFailToReceiveAd(adLoader, error);
   }

   public void DidFinishLoading(AdLoader adLoader)
   {
      Debug.WriteLine("DidFinishLoading");
      //base.DidFinishLoading(adLoader);
   }
}

ОБНОВИТЬ:

Я изменил IUnifiedNativeAdLoaderDelegate на UnifiedNativeAdLoaderDelegate и попытался переопределить методы, но все равно получил тот же результат:

      public class MyAdLoaderDelegate : UnifiedNativeAdLoaderDelegate
{

    public override void DidFailToReceiveAd(AdLoader adLoader, NSError error)
    {
        base.DidFailToReceiveAd(adLoader, error);
    }

    public override void DidFinishLoading(AdLoader adLoader)
    {
        base.DidFinishLoading(adLoader);
    }

    public override void DidReceiveUnifiedNativeAd(AdLoader adLoader, NativeAd nativeAd)
    {
        throw new NotImplementedException();
    }
}

0 ответов

Другие вопросы по тегам