private void OnManagerReady(IMediationManager manager) { if (!this) // When object are destroyed { return; } this.manager = manager; manager.OnLoadedAd += OnInterstitialAdLoaded; manager.OnFailedToLoadAd += OnInterstitialAdFailedToLoad; manager.OnInterstitialAdFailedToShow += OnAdFailedToShow.Invoke; manager.OnInterstitialAdShown += OnAdShown.Invoke; manager.OnInterstitialAdClicked += OnAdClicked.Invoke; manager.OnInterstitialAdClosed += OnAdClosed.Invoke; try { if (manager.IsReadyAd(AdType.Interstitial)) { OnAdLoaded.Invoke(); } } catch (Exception e) { Debug.LogException(e); } }
public void Start() { // -- Privacy Laws (Optional): MobileAds.settings.userConsent = userConsent; MobileAds.settings.userCCPAStatus = userCCPAStatus; // -- Configuring CAS SDK (Optional): MobileAds.settings.isExecuteEventsOnUnityThread = true; // -- Create manager: manager = MobileAds.BuildManager().Initialize(); // -- Configuring Banner Ad // Init Banner Size can be selected in Assets/CleverAdsSolutions/Settings //manager.bannerSize = AdSize.AdaptiveBanner; manager.bannerPosition = AdPosition.BottomCenter; // -- Subscribe to CAS events: manager.OnRewardedAdCompleted += RewardedSuccessful; // Any other callbacks from IMediationManager // -- Get native CAS SDK version versionText.text = MobileAds.GetSDKVersion(); InvokeRepeating("OnRefreshStatus", 1.0f, 1.0f); }
private void OnManagerReady(IMediationManager manager) { if (!this) // When object are destroyed { return; } this.manager = manager; RefreshLinktWithAdView(); }
internal static IMediationManager CreateManager(CASInitSettings initSettings) { if (managers == null) { if (initSettings.managersCount == 0) { managers = new List <IMediationManager>(); } else { managers = new List <IMediationManager>(initSettings.managersCount); for (int i = 0; i < initSettings.managersCount; i++) { managers.Add(null); } } } else { for (int i = 0; i < managers.Count; i++) { var readyManager = managers[i]; if (readyManager != null && readyManager.managerID == initSettings.targetId) { if (initSettings.initListener != null) { initSettings.initListener(true, null); } return(readyManager); } } } if (settings == null) { settings = CreateSettigns(initSettings); } if (initSettings.extras == null) { initSettings.extras = globalExtras; } else if (globalExtras != null) { var mergeExtras = new Dictionary <string, string>(globalExtras); foreach (var extra in initSettings.extras) { mergeExtras[extra.Key] = extra.Value; } initSettings.extras = mergeExtras; } IMediationManager manager = null; #if UNITY_EDITOR || TARGET_OS_SIMULATOR manager = CAS.Unity.CASMediationManager.CreateManager(initSettings); #elif UNITY_ANDROID if (Application.platform == RuntimePlatform.Android) { var android = new CAS.Android.CASMediationManager(initSettings); android.CreateManager(initSettings); manager = android; } #elif UNITY_IOS if (Application.platform == RuntimePlatform.IPhonePlayer) { var ios = new CAS.iOS.CASMediationManager(initSettings); ios.CreateManager(initSettings); manager = ios; } #endif if (manager == null) { throw new NotSupportedException("Current platform: " + Application.platform.ToString()); } #pragma warning disable CS0618 // Type or member is obsolete if (initSettings.bannerSize != 0) // Before onInitManager callback { manager.bannerSize = initSettings.bannerSize; } #pragma warning restore CS0618 // Type or member is obsolete var managerIndex = initSettings.IndexOfManagerId(initSettings.targetId); if (managerIndex < 0) { managerIndex = managers.Count; managers.Add(manager); } else { managers[managerIndex] = manager; } if (managerIndex < initCallback.Count) { var onInitManager = initCallback[managerIndex]; if (onInitManager != null) { initCallback[managerIndex] = null; try { onInitManager(manager); } catch (Exception e) { Debug.LogException(e); } } } return(manager); }