Exemplo n.º 1
0
        public static AdRequest.Builder GetRequest()
        {
            bool   addBundle      = false;
            Bundle bundleExtra    = new Bundle();
            var    requestBuilder = new AdRequest.Builder();

            if (CrossMTAdmob.Current.TestDevices != null)
            {
                foreach (var testDevice in CrossMTAdmob.Current.TestDevices)
                {
                    requestBuilder.AddTestDevice(testDevice);
                }
            }

            if (!CrossMTAdmob.Current.UserPersonalizedAds)
            {
                bundleExtra.PutString("npa", "1");
                addBundle = true;
            }

            if (CrossMTAdmob.Current.UseRestrictedDataProcessing)
            {
                bundleExtra.PutString("rdp", "1");
                addBundle = true;
            }

            if (addBundle)
            {
                requestBuilder = requestBuilder.AddNetworkExtrasBundle(Java.Lang.Class.FromType(typeof(AdMobAdapter)), bundleExtra);
            }

            return(requestBuilder);
        }
        public static AdRequest GetRequest()
        {
            UpdateRequestConfiguration();

            bool   addExtra       = false;
            Bundle bundleExtra    = new Bundle();
            var    requestBuilder = new AdRequest.Builder();

            if (!CrossAdMob.Current.UserPersonalizedAds)
            {
                bundleExtra.PutString("npa", "1");
                addExtra = true;
            }
            if (CrossAdMob.Current.UseRestrictedDataProcessing)
            {
                bundleExtra.PutString("rdp", "1");
                addExtra = true;
            }
            if (CrossAdMob.Current.CustomParameters.Count > 0)
            {
                foreach (KeyValuePair <string, string> param in CrossAdMob.Current.CustomParameters)
                {
                    bundleExtra.PutString(param.Key, param.Value);
                }
                addExtra = true;
            }

            if (addExtra)
            {
                requestBuilder = requestBuilder.AddNetworkExtrasBundle(Java.Lang.Class.FromType(typeof(AdMobAdapter)), bundleExtra);
            }

            return(requestBuilder.Build());
        }
Exemplo n.º 3
0
        private void CreateNativeControl(MTAdView myMtAdView, string adsId, bool?personalizedAds)
        {
            if (_adView != null)
            {
                return;
            }

            _adUnitId = !string.IsNullOrEmpty(adsId) ? adsId : CrossMTAdmob.Current.AdsId;

            if (string.IsNullOrEmpty(_adUnitId))
            {
                Console.WriteLine("You must set the adsID before using it");
            }

            var listener = new MyAdBannerListener();

            listener.AdClicked    += myMtAdView.AdClicked;
            listener.AdClosed     += myMtAdView.AdClosed;
            listener.AdImpression += myMtAdView.AdImpression;
            listener.AdOpened     += myMtAdView.AdOpened;

            _adView = new AdView(Context)
            {
                AdSize           = _adSize,
                AdUnitId         = _adUnitId,
                AdListener       = listener,
                LayoutParameters = new LinearLayout.LayoutParams(LayoutParams.WrapContent, LayoutParams.WrapContent)
            };

            var requestBuilder = new AdRequest.Builder();

            if (CrossMTAdmob.Current.TestDevices != null)
            {
                foreach (var testDevice in CrossMTAdmob.Current.TestDevices)
                {
                    requestBuilder.AddTestDevice(testDevice);
                }
            }

            if ((personalizedAds.HasValue && personalizedAds.Value) || CrossMTAdmob.Current.UserPersonalizedAds)
            {
                _adView.LoadAd(requestBuilder.Build());
            }
            else
            {
                Bundle bundleExtra = new Bundle();
                bundleExtra.PutString("npa", "1");

                _adView.LoadAd(requestBuilder
                               .AddNetworkExtrasBundle(Java.Lang.Class.FromType(typeof(AdMobAdapter)), bundleExtra)
                               .Build());
            }
        }
Exemplo n.º 4
0
        public static AdRequest.Builder GetRequest()
        {
            bool   addBundle      = false;
            Bundle bundleExtra    = new Bundle();
            var    requestBuilder = new AdRequest.Builder();

            if (CrossMTAdmob.Current.TestDevices != null)
            {
                foreach (var testDevice in CrossMTAdmob.Current.TestDevices)
                {
                    requestBuilder.AddTestDevice(testDevice);
                }
            }

            if (!CrossMTAdmob.Current.UserPersonalizedAds)
            {
                bundleExtra.PutString("npa", "1");
                addBundle = true;
            }

            if (CrossMTAdmob.Current.UseRestrictedDataProcessing)
            {
                bundleExtra.PutString("rdp", "1");
                addBundle = true;
            }

            if (CrossMTAdmob.Current.ComplyWithFamilyPolicies)
            {
                requestBuilder.TagForChildDirectedTreatment(CrossMTAdmob.Current.ComplyWithFamilyPolicies);
                bundleExtra.PutString("max_ad_content_rating", "G");
                addBundle = true;
            }

            if (CrossMTAdmob.Current.CustomParameters.Count > 0)
            {
                foreach (KeyValuePair <string, string> param in CrossMTAdmob.Current.CustomParameters)
                {
                    bundleExtra.PutString(param.Key, param.Value);
                }
                addBundle = true;
            }

            if (addBundle)
            {
                requestBuilder = requestBuilder.AddNetworkExtrasBundle(Java.Lang.Class.FromType(typeof(AdMobAdapter)), bundleExtra);
            }

            return(requestBuilder);
        }
Exemplo n.º 5
0
        private AdView CreateAdView()
        {
            var adView = new AdView(Context)
            {
                AdSize   = AdSize.SmartBanner,
                AdUnitId = Element.AdUnitId
            };

            adView.LayoutParameters = new LinearLayout.LayoutParams(LayoutParams.MatchParent, LayoutParams.MatchParent);

            Bundle extras = new Bundle();

            extras.PutString(MAX_AD_CONTENT_RATING, AD_CONTENT_RATING_G);

            AdRequest.Builder builder = new AdRequest.Builder();
            builder.AddNetworkExtrasBundle(Java.Lang.Class.FromType(typeof(AdMobAdapter)), extras);
            builder.TagForChildDirectedTreatment(true);

            AdRequest request = builder.Build();

            adView.LoadAd(request);

            return(adView);
        }