using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using AnyThinkAds.Common; using AnyThinkAds.Api; #pragma warning disable 0067 namespace AnyThinkAds.iOS { public class ATNativeBannerAdClient : IATNativeBannerAdClient { public event EventHandler onAdLoadEvent; public event EventHandler onAdLoadFailureEvent; public event EventHandler onAdImpressEvent; public event EventHandler onAdClickEvent; public event EventHandler onAdVideoStartEvent; public event EventHandler onAdVideoEndEvent; public event EventHandler onAdVideoProgressEvent; public event EventHandler onAdCloseEvent; public event EventHandler onAdSourceAttemptEvent; public event EventHandler onAdSourceFilledEvent; public event EventHandler onAdSourceLoadFailureEvent; public event EventHandler onAdSourceBiddingAttemptEvent; public event EventHandler onAdSourceBiddingFilledEvent; public event EventHandler onAdSourceBiddingFailureEvent; private ATNativeBannerAdListener listener; public void loadAd(string placementId, string mapJson) { Debug.Log("ATNativeBannerAdClient::loadAd()"); ATNativeBannerAdWrapper.setClientForPlacementID(placementId, this); Debug.Log("ATNativeBannerAdClient::loadAd(), after set client"); ATNativeBannerAdWrapper.loadAd(placementId, mapJson); Debug.Log("ATNativeBannerAdClient::loadAd(), after invoke load ad"); } public bool adReady(string placementId) { Debug.Log("ATNativeBannerAdClient::adReady()"); return ATNativeBannerAdWrapper.adReady(placementId); } public void setListener(ATNativeBannerAdListener listener) { Debug.Log("ATNativeBannerAdClient::setListener()"); this.listener = listener; } public void showAd(string placementId, ATRect rect, Dictionary pairs) { Debug.Log("ATNativeBannerAdClient::showAd()"); ATNativeBannerAdWrapper.showAd(placementId, rect, pairs); } public void removeAd(string placementId) { Debug.Log("ATNativeBannerAdClient::removeAd()"); ATNativeBannerAdWrapper.removeAd(placementId); } //Listener method(s) public void onAdLoaded(string placementId) { Debug.Log("ATNativeBannerAdClient::onAdLoaded()"); onAdLoadEvent?.Invoke(this, new ATAdEventArgs(placementId)); } public void onAdLoadFail(string placementId, string code, string message) { Debug.Log("ATNativeBannerAdClient::onAdLoadFail()"); onAdLoadFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, "", code, message)); } public void onAdImpressed(string placementId, string callbackJson) { Debug.Log("ATNativeBannerAdClient::onAdImpressed()"); onAdImpressEvent?.Invoke(this, new ATAdEventArgs(placementId,callbackJson)); } public void onAdClicked(string placementId, string callbackJson) { Debug.Log("ATNativeBannerAdClient::onAdClicked()"); onAdClickEvent?.Invoke(this, new ATAdEventArgs(placementId,callbackJson)); } public void onAdAutoRefresh(string placementId, string callbackJson) { Debug.Log("ATNativeBannerAdClient::onAdAutoRefresh()"); onAdSourceFilledEvent?.Invoke(this, new ATAdEventArgs(placementId,callbackJson)); } public void onAdAutoRefreshFailure(string placementId, string code, string message) { Debug.Log("ATNativeBannerAdClient::onAdAutoRefreshFailure()"); onAdSourceLoadFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, "", code, message)); } public void onAdCloseButtonClicked(string placementId) { Debug.Log("ATNativeBannerAdClient::onAdCloseButtonClicked()"); onAdCloseEvent?.Invoke(this, new ATAdEventArgs(placementId)); } } }