/// <summary> /// Displays an interstitial from the requested advertiser, if the requested advertiser is not available, another interstitial will be displayed based on your mediation settings /// </summary> /// <param name="advertiser">advertiser from which ad will be displayed if available</param> /// <param name="InterstitialClosed">callback triggered when interstitial video is closed</param> public void ShowInterstitial(SupportedAdvertisers advertiser, UnityAction InterstitialClosed = null) { //if ads are disabled by user -> do nothing if (CanShowAds() == false) { return; } Advertiser selected = GetInterstitialAdvertisers().First(cond => cond.advertiser == advertiser); if (selected.advertiserScript.IsInterstitialAvailable()) { if (debug) { Debug.Log("Interstitial from " + advertiser + " is available"); ScreenWriter.Write("Interstitial from " + advertiser + " is available"); } selected.advertiserScript.ShowInterstitial(InterstitialClosed); } else { if (debug) { Debug.Log("Interstitial from " + advertiser + " is NOT available"); ScreenWriter.Write("Interstitial from " + advertiser + " is NOT available"); } ShowInterstitial(InterstitialClosed); } }
public Advertiser(ICustomAds advertiserScript, MediationSettings mediationSettings, List <PlatformSettings> platformSettings) { this.advertiserScript = advertiserScript; this.mediationSettings = mediationSettings; this.platformSettings = platformSettings; advertiser = mediationSettings.advertiser; }
public AdvertiserSettings(SupportedAdvertisers advertiser, string sdkLink, string preprocessorDirective) { this.advertiser = advertiser; this.sdkLink = sdkLink; this.preprocessorDirective = preprocessorDirective; useSDK = false; platformSettings = new List <PlatformSettings>(); }
public MediationSettings(MediationSettings settings) { advertiser = settings.advertiser; advertiserName = settings.advertiser.ToString(); bannerSettings = settings.bannerSettings; interstitialSettings = settings.interstitialSettings; rewardedSettings = settings.rewardedSettings; }
public MediationSettings(SupportedAdvertisers advertiser, AdTypeSettings bannerSettings, AdTypeSettings interstitialSettings, AdTypeSettings rewardedSettings) { this.advertiser = advertiser; advertiserName = advertiser.ToString(); this.bannerSettings = bannerSettings; this.interstitialSettings = interstitialSettings; this.rewardedSettings = rewardedSettings; }
/// <summary> /// Displays a banner from advertiser used as parameter /// </summary> /// <param name="advertiser">Advertiser to show banner from</param> /// <param name="position">Top or Bottom</param> /// <param name="bannerType">Regular or Smart</param> public void ShowBanner(SupportedAdvertisers advertiser, BannerPosition position, BannerType bannerType = BannerType.SmartBanner) { if (CanShowAds() == false) { return; } for (int i = 0; i < bannerAdvertisers.Count; i++) { bannerAdvertisers[i].advertiserScript.ResetBannerUsage(); } hideBanners = false; LoadBanner(position, bannerType, true, advertiser); }
/// <summary> /// Displays a rewarded video based on advertiser sent as parameter, if the requested advertiser is not available selected mediation settings are used /// </summary> /// <param name="advertiser">the advertiser from which you want to display the rewarded video</param> /// <param name="CompleteMethod">callback triggered when video reward finished - if bool param is true => video was not skipped</param> public void ShowRewardedVideo(SupportedAdvertisers advertiser, UnityAction <bool> CompleteMethod) { Advertiser selected = GetRewardedAdvertisers().First(cond => cond.advertiser == advertiser); if (selected.advertiserScript.IsRewardVideoAvailable()) { if (debug) { Debug.Log("Rewarded Video from " + advertiser + " is available"); ScreenWriter.Write("Rewarded Video from " + advertiser + " is available"); } selected.advertiserScript.ShowRewardVideo(CompleteMethod); } else { if (debug) { Debug.Log("Rewarded Video from " + advertiser + " is NOT available"); ScreenWriter.Write("Rewarded Video from " + advertiser + " is NOT available"); } ShowRewardedVideo(CompleteMethod); } }
/// <summary> /// Loads banner for display /// </summary> /// <param name="position"></param> /// <param name="bannerType"></param> private void LoadBanner(BannerPosition position, BannerType bannerType, bool specificAdvertiser, SupportedAdvertisers advertiser = SupportedAdvertisers.Admob) { if (specificAdvertiser) { Advertiser selected = GetBannerAdvertisers().FirstOrDefault(cond => cond.advertiser == advertiser); if (selected != null) { if (debug) { Debug.Log("Specific banner loaded from " + selected); ScreenWriter.Write("Specific banner loaded from " + selected); } selected.advertiserScript.ShowBanner(position, bannerType, BannerDisplayedResult); return; } else { if (debug) { Debug.Log(selected + " has no banner ads"); ScreenWriter.Write(selected + " has no banner ads"); } } } ICustomAds selectedAdvertiser = null; if (bannerMediation == SupportedMediation.OrderMediation) { selectedAdvertiser = UseOrder(bannerAdvertisers, SupportedAdTypes.Banner); } else { selectedAdvertiser = UsePercent(bannerAdvertisers, SupportedAdTypes.Banner); } if (selectedAdvertiser != null) { if (debug) { Debug.Log("Banner loaded from " + selectedAdvertiser); ScreenWriter.Write("Banner loaded from " + selectedAdvertiser); } selectedAdvertiser.ShowBanner(position, bannerType, BannerDisplayedResult); } else { isBannerOnScreen = false; if (debug) { Debug.Log("No Banners Available"); ScreenWriter.Write("No Banners Available"); } } }
public MediationSettings(SupportedAdvertisers advertiser) { this.advertiser = advertiser; advertiserName = advertiser.ToString(); }
public List <PlatformSettings> GetPlaftormSettings(SupportedAdvertisers advertiser) { return(advertiserSettings.FirstOrDefault(cond => cond.advertiser == advertiser).platformSettings); }
public MediationSettings GetAdvertiserSettings(SupportedAdvertisers advertiser) { return(mediationSettings.FirstOrDefault(cond => cond.advertiser == advertiser)); }