Example #1
0
 public static AdManager get(AdMode mode = AdMode.TEST)
 {
     if (instance == null)
     {
         instance = new AdManager();
     }
     instance.mode = mode;
     return(instance);
 }
Example #2
0
        private static void loadAd(AdMode adMode, AdEventListener listener, bool is3D)
        {
            init();
            int adModeIndex = (int)adMode;
            AndroidJavaObject adModeIndexInteger = new AndroidJavaObject("java.lang.Integer", adModeIndex);
            AndroidJavaObject is3DBoolean        = new AndroidJavaObject("java.lang.Boolean", is3D);

            if (listener == null)
            {
                wrapper.Call("loadAd", adModeIndexInteger);
                return;
            }
            wrapper.Call("loadAd", adModeIndexInteger, new ImplementationAdEventListener(listener));
        }
Example #3
0
 public static void loadAd(AdMode adMode, AdEventListener listener)
 {
     loadAd(adMode, listener, false);
 }
Example #4
0
 public static void loadAd(AdMode adMode)
 {
     loadAd(adMode, null);
 }
Example #5
0
        internal static AdProvider GetAd(this AdSettings adsettings, AdMode mode)
        {
            //Need to handle Groups and Order

            if (adsettings == null || adsettings.CurrentCulture == null)
            {
                return(new AdRotator.AdProviders.AdProviderNone());
            }

            var validDescriptors = adsettings.CurrentCulture.Items
                                   .Where(x => !adsettings._failedAdTypes.Contains(((AdProvider)x).AdProviderType) &&
                                          AdRotatorComponent.PlatformSupportedAdProviders.Contains(((AdProvider)x).AdProviderType) &&
                                          (((AdProvider)x).Probability > 0) || ((AdProvider)x).AdOrder > 0).Cast <AdProvider>().ToArray();

            var defaultHouseAd = (AdProvider)adsettings.CurrentCulture.Items.FirstOrDefault(x => ((AdProvider)x).AdProviderType == AdType.DefaultHouseAd && !adsettings._failedAdTypes.Contains(AdType.DefaultHouseAd));

            if (validDescriptors != null && validDescriptors.Length > 0)
            {
                switch (mode)
                {
                case AdMode.Random:
                    validDescriptors = RandomPermutation <AdProvider>(validDescriptors);

                    var    totalValueBetweenValidAds = validDescriptors.Sum(x => ((AdProvider)x).Probability);
                    var    randomValue  = AdRotator.AdRotatorComponent._rnd.NextDouble() * totalValueBetweenValidAds;
                    double totalCounter = 0;
                    foreach (AdProvider probabilityDescriptor in validDescriptors)
                    {
                        totalCounter += probabilityDescriptor.Probability;
                        if (randomValue < totalCounter)
                        {
                            adsettings.CurrentAdType = probabilityDescriptor.AdProviderType;
                            return(probabilityDescriptor);
                        }
                    }
                    break;

                case AdMode.Stepped:
                case AdMode.Ordered:
                    validDescriptors = validDescriptors.OrderBy(x => x.AdOrder).Cast <AdProvider>().ToArray();
                    if (mode == AdMode.Ordered)
                    {
                        return(validDescriptors[0]);
                    }
                    adsettings.CurrentAdProvider = validDescriptors[adsettings.CurrentAdOrderIndex];
                    adsettings.CurrentAdOrderIndex++;
                    if (adsettings.CurrentAdOrderIndex > validDescriptors.Length - 1)
                    {
                        adsettings.CurrentAdOrderIndex = 0;
                    }
                    return(adsettings.CurrentAdProvider);
                }
            }

            if (defaultHouseAd != null)
            {
                adsettings.CurrentAdType = AdType.DefaultHouseAd;
                return(defaultHouseAd);
            }

            return(new AdProviders.AdProviderNone());
        }
Example #6
0
 public void setAdMode(AdMode mode)
 {
     this.mode = mode;
 }
		private static void loadAd(AdMode adMode, AdEventListener listener, bool is3D) {
			init();
			int adModeIndex = (int)adMode;
			AndroidJavaObject adModeIndexInteger = new AndroidJavaObject("java.lang.Integer", adModeIndex);
			AndroidJavaObject is3DBoolean = new AndroidJavaObject("java.lang.Boolean", is3D);
			if (listener == null) {
				wrapper.Call ("loadAd", adModeIndexInteger);
				return;
			}
			wrapper.Call ("loadAd", adModeIndexInteger, new ImplementationAdEventListener (listener));
		}
		public static void loadAd(AdMode adMode, AdEventListener listener) {
			loadAd (adMode, listener, false);
		}
		public static void loadAd(AdMode adMode) {
			loadAd (adMode, null);
		}
Example #10
0
 /// <summary>
 /// Initializes a new instance of AppSettings.
 /// </summary>
 /// <param name="src">Settings to clone.</param>
 public AppSettings(AppSettings src)
 {
     this.SettingsUrl = src.SettingsUrl;
     this.IsTest = src.IsTest;
     this.AdMode = src.AdMode;
 }