private AdSize getAdSize()
        {
            var adsize      = AdSizeCons.SmartBannerPortrait;
            var devicewidth = (int)(DeviceDisplay.MainDisplayInfo.Width / DeviceDisplay.MainDisplayInfo.Density);

            if (_formsAdView.WidthRequest == -1 && _formsAdView.HeightRequest == -1)
            {
                //Get Adaptive AdSize from device width
                adsize = AdSizeCons.GetFromCGSize(new CGSize(devicewidth, devicewidth * 0.15));
                //Set Forms HeightRequest from Calculated AdSize and ratio DeviceWidth/AdWidth
                _formsAdView.HeightRequest = adsize.Size.Height * (devicewidth / adsize.Size.Width);
            }
            else if (_formsAdView.WidthRequest != -1 && _formsAdView.HeightRequest != -1)
            {
                //Get custom specific AdSize
                adsize = AdSizeCons.GetFromCGSize(new CGSize(_formsAdView.WidthRequest, _formsAdView.HeightRequest));
                //Adjust HeightRatio from AdSize
                _formsAdView.HeightRequest = adsize.Size.Height * (_formsAdView.WidthRequest / adsize.Size.Width);
            }
            else if (_formsAdView.WidthRequest != -1)
            {
                //Get Adaptive AdSize from WidthRequest
                adsize = AdSizeCons.GetFromCGSize(new CGSize(_formsAdView.WidthRequest, _formsAdView.WidthRequest * 0.15));
                //Set Forms HeightRequest from Calculated AdSize and ratio WidthRequest/AdWidth
                _formsAdView.HeightRequest = adsize.Size.Height * (_formsAdView.WidthRequest / adsize.Size.Width);
            }
            return(adsize);
        }
        private void SetAdView()
        {
            adView = new NativeExpressAdView(AdSizeCons.GetFullWidthPortrait(150));

            adView.AdUnitID           = "ca-app-pub-XXXXXXXXXXXXXXX";
            adView.RootViewController = ViewController;

            // The video options object can be used to control the initial mute state of video assets.
            // By default, they start muted.
            var videoOptions = new VideoOptions();

            videoOptions.StartMuted = true;
            adView.SetAdOptions(new AdLoaderOptions[] { videoOptions });

            View.AddSubview(adView);
            var request = Request.GetDefaultRequest();

            //request.TestDevices = new[] { Request.SimulatorId.ToString() };
            adView.LoadRequest(request);
        }
        NativeExpressAdView CreateNativeControl()
        {
            if (adView != null)
            {
                return(adView);
            }

            adView = new NativeExpressAdView(AdSizeCons.GetFullWidthPortrait(150));

            adView.AdUnitID           = "ca-app-pub-XXXXXXXXXXX";
            adView.RootViewController = GetVisibleViewController();

            // Wire AdReceived event to know when the Ad is ready to be displayed
            adView.AdReceived += (object sender, EventArgs e) =>
            {
            };
            var request = Request.GetDefaultRequest();

            //request.TestDevices = new[] { Request.SimulatorId.ToString() };
            adView.LoadRequest(request);
            return(adView);
        }