123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427 |
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using AnyThinkAds.Common;
- using AnyThinkAds.Api;
- using AnyThinkAds.ThirdParty.LitJson;
- namespace AnyThinkAds.Android
- {
- public class ATInterstitialAdClient : AndroidJavaProxy,IATInterstitialAdClient
- {
- public event EventHandler<ATAdEventArgs> onAdLoadEvent;
- public event EventHandler<ATAdErrorEventArgs> onAdLoadFailureEvent;
- public event EventHandler<ATAdEventArgs> onAdShowEvent;
- public event EventHandler<ATAdErrorEventArgs> onAdShowFailureEvent;
- public event EventHandler<ATAdEventArgs> onAdCloseEvent;
- public event EventHandler<ATAdEventArgs> onAdClickEvent;
- public event EventHandler<ATAdEventArgs> onAdVideoStartEvent;
- public event EventHandler<ATAdErrorEventArgs> onAdVideoFailureEvent;
- public event EventHandler<ATAdEventArgs> onAdVideoEndEvent;
- public event EventHandler<ATAdEventArgs> onAdSourceAttemptEvent;
- public event EventHandler<ATAdEventArgs> onAdSourceFilledEvent;
- public event EventHandler<ATAdErrorEventArgs> onAdSourceLoadFailureEvent;
- public event EventHandler<ATAdEventArgs> onAdSourceBiddingAttemptEvent;
- public event EventHandler<ATAdEventArgs> onAdSourceBiddingFilledEvent;
- public event EventHandler<ATAdErrorEventArgs> onAdSourceBiddingFailureEvent;
- private Dictionary<string, AndroidJavaObject> interstitialHelperMap = new Dictionary<string, AndroidJavaObject>();
- //private AndroidJavaObject videoHelper;
- private ATInterstitialAdListener anyThinkListener;
- private AndroidJavaObject interstitialAutoAdHelper;
- public ATInterstitialAdClient() : base("com.anythink.unitybridge.interstitial.InterstitialListener")
- {
- interstitialAutoAdHelper = new AndroidJavaObject("com.anythink.unitybridge.interstitial.InterstitialAutoAdHelper", this);
- }
- public void loadInterstitialAd(string placementId, string mapJson)
- {
- //如果不存在则直接创建对应广告位的helper
- if(!interstitialHelperMap.ContainsKey(placementId))
- {
- AndroidJavaObject videoHelper = new AndroidJavaObject(
- "com.anythink.unitybridge.interstitial.InterstitialHelper", this);
- videoHelper.Call("initInterstitial", placementId);
- interstitialHelperMap.Add(placementId, videoHelper);
- Debug.Log("ATInterstitialAdClient : no exit helper ,create helper ");
- }
- try
- {
- Debug.Log("ATInterstitialAdClient : loadInterstitialAd ");
- interstitialHelperMap[placementId].Call("loadInterstitialAd", mapJson);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log ("ATInterstitialAdClient : error."+e.Message);
- }
- }
- public void setListener(ATInterstitialAdListener listener)
- {
- anyThinkListener = listener;
- }
- public bool hasInterstitialAdReady(string placementId)
- {
- bool isready = false;
- Debug.Log ("ATInterstitialAdClient : hasAdReady....");
- try{
- if (interstitialHelperMap.ContainsKey(placementId)) {
- isready = interstitialHelperMap[placementId].Call<bool> ("isAdReady");
- }
- }catch(System.Exception e){
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log ("ATInterstitialAdClient : error."+e.Message);
- }
- return isready;
- }
- public string checkAdStatus(string placementId)
- {
- string adStatusJsonString = "";
- Debug.Log("ATInterstitialAdClient : checkAdStatus....");
- try
- {
- if (interstitialHelperMap.ContainsKey(placementId))
- {
- adStatusJsonString = interstitialHelperMap[placementId].Call<string>("checkAdStatus");
- }
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("ATInterstitialAdClient : error." + e.Message);
- }
- return adStatusJsonString;
- }
-
- public void entryScenarioWithPlacementID(string placementId, string scenarioID){
- Debug.Log("ATInterstitialAdClient : entryScenarioWithPlacementID....");
- try
- {
- if (interstitialHelperMap.ContainsKey(placementId))
- {
- interstitialHelperMap[placementId].Call("entryAdScenario", scenarioID);
- }
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("ATInterstitialAdClient entryScenarioWithPlacementID: error." + e.Message);
- }
- }
- public string getValidAdCaches(string placementId)
- {
- string validAdCachesString = "";
- Debug.Log("ATNativeAdClient : getValidAdCaches....");
- try
- {
- if (interstitialHelperMap.ContainsKey(placementId))
- {
- validAdCachesString = interstitialHelperMap[placementId].Call<string>("getValidAdCaches");
- }
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("ATNativeAdClient : error." + e.Message);
- }
- return validAdCachesString;
- }
- public void showInterstitialAd(string placementId, string jsonmap)
- {
- Debug.Log("ATInterstitialAdClient : showAd " );
- try{
- if (interstitialHelperMap.ContainsKey(placementId)) {
- this.interstitialHelperMap[placementId].Call ("showInterstitialAd", jsonmap);
- }
- }catch(System.Exception e){
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log ("ATInterstitialAdClient : error."+e.Message);
- }
- }
- public void cleanCache(string placementId)
- {
-
- Debug.Log("ATInterstitialAdClient : clean" );
- try{
- if (interstitialHelperMap.ContainsKey(placementId)) {
- this.interstitialHelperMap[placementId].Call ("clean");
- }
- }catch(System.Exception e){
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log ("ATInterstitialAdClient : error."+e.Message);
- }
- }
- public void onApplicationForces(string placementId)
- {
- Debug.Log ("onApplicationForces.... ");
- try{
- if (interstitialHelperMap.ContainsKey(placementId)) {
- this.interstitialHelperMap[placementId].Call ("onResume");
- }
- }catch(System.Exception e){
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log ("ATInterstitialAdClient : error."+e.Message);
- }
- }
- public void onApplicationPasue(string placementId)
- {
- Debug.Log ("onApplicationPasue.... ");
- try{
- if (interstitialHelperMap.ContainsKey(placementId)) {
- this.interstitialHelperMap[placementId].Call ("onPause");
- }
- }catch(System.Exception e){
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log ("ATInterstitialAdClient : error."+e.Message);
- }
- }
- //广告加载成功
- public void onInterstitialAdLoaded(string placementId)
- {
- Debug.Log("onInterstitialAdLoaded...unity3d.");
- onAdLoadEvent?.Invoke(this, new ATAdEventArgs(placementId));
- }
- //广告加载失败
- public void onInterstitialAdLoadFail(string placementId,string code, string error)
- {
- Debug.Log("onInterstitialAdFailed...unity3d.");
- onAdLoadFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, code, error));
- }
- //开始播放
- public void onInterstitialAdVideoStart(string placementId, string callbackJson)
- {
- Debug.Log("onInterstitialAdPlayStart...unity3d.");
- onAdVideoStartEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- //结束播放
- public void onInterstitialAdVideoEnd(string placementId, string callbackJson)
- {
- Debug.Log("onInterstitialAdPlayEnd...unity3d.");
- onAdVideoEndEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- //播放失败
- public void onInterstitialAdVideoError(string placementId,string code, string error)
- {
- Debug.Log("onInterstitialAdPlayFailed...unity3d.");
- onAdVideoFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, code, error));
- }
-
- //展示失败
- public void OnInterstitialAdFailedToShow(string placementID) {
- Debug.Log("Unity: ATInterstitialAdClient::OnInterstitialAdFailedToShow()");
- onAdShowFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementID, "-1", "Failed to show video ad"));
- }
- //广告关闭
- public void onInterstitialAdClose(string placementId, string callbackJson)
- {
- Debug.Log("onInterstitialAdClosed...unity3d.");
- onAdCloseEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- //广告点击
- public void onInterstitialAdClicked(string placementId, string callbackJson)
- {
- Debug.Log("onInterstitialAdClicked...unity3d.");
- onAdClickEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- public void onInterstitialAdShow(string placementId, string callbackJson){
- Debug.Log("onInterstitialAdShow...unity3d.");
- onAdShowEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- // Adsource Listener
- public void onAdSourceBiddingAttempt(string placementId, string callbackJson)
- {
- Debug.Log("onAdSourceBiddingAttempt...unity3d." + placementId + "," + callbackJson);
- onAdSourceBiddingAttemptEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- public void onAdSourceBiddingFilled(string placementId, string callbackJson)
- {
- Debug.Log("onAdSourceBiddingFilled...unity3d." + placementId + "," + callbackJson);
-
- onAdSourceBiddingFilledEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- public void onAdSourceBiddingFail(string placementId, string callbackJson, string code, string error)
- {
- Debug.Log("onAdSourceBiddingFail...unity3d." + placementId + "," + code + "," + error + "," + callbackJson);
-
- onAdSourceBiddingFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, callbackJson, code, error));
- }
- public void onAdSourceAttempt(string placementId, string callbackJson)
- {
- Debug.Log("onAdSourceAttempt...unity3d." + placementId + "," + callbackJson);
-
- onAdSourceAttemptEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- public void onAdSourceLoadFilled(string placementId, string callbackJson)
- {
- Debug.Log("onAdSourceLoadFilled...unity3d." + placementId + "," + callbackJson);
-
- onAdSourceFilledEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
- }
- public void onAdSourceLoadFail(string placementId, string callbackJson, string code, string error)
- {
- Debug.Log("onAdSourceLoadFail...unity3d." + placementId + "," + code + "," + error + "," + callbackJson);
-
- onAdSourceLoadFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, callbackJson, code, error));
- }
- // Auto
- public void addAutoLoadAdPlacementID(string[] placementIDList){
- Debug.Log("Unity: ATInterstitialAdClient:addAutoLoadAdPlacementID()" + JsonMapper.ToJson(placementIDList));
- try
- {
- interstitialAutoAdHelper.Call("addPlacementIds", JsonMapper.ToJson(placementIDList));
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("Unity: ATInterstitialAdClient addAutoLoadAdPlacementID: error." + e.Message);
- }
- }
- public void removeAutoLoadAdPlacementID(string placementId)
- {
- Debug.Log("Unity: ATInterstitialAdClient:removeAutoLoadAdPlacementID()");
- try
- {
- interstitialAutoAdHelper.Call("removePlacementIds", placementId);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("Unity: ATInterstitialAdClient removeAutoLoadAdPlacementID: error." + e.Message);
- }
- }
- public bool autoLoadInterstitialAdReadyForPlacementID(string placementId)
- {
- Debug.Log("Unity: ATInterstitialAdClient:autoLoadInterstitialAdReadyForPlacementID()");
- bool isready = false;
- try
- {
- isready = interstitialAutoAdHelper.Call<bool>("isAdReady", placementId);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("ATInterstitialAdClient:autoLoadInterstitialAdReadyForPlacementID( : error." + e.Message);
- }
- return isready;
- }
- public string getAutoValidAdCaches(string placementId)
- {
- Debug.Log("Unity: ATInterstitialAdClient:getAutoValidAdCaches()");
- string adStatusJsonString = "";
- try
- {
- adStatusJsonString = interstitialAutoAdHelper.Call<string>("getValidAdCaches", placementId);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("ATInterstitialAdClient:getAutoValidAdCaches() : error." + e.Message);
- }
- return adStatusJsonString;
- }
- public void setAutoLocalExtra(string placementId, string mapJson)
- {
- Debug.Log("Unity: ATInterstitialAdClient:setAutoLocalExtra()");
- try
- {
- interstitialAutoAdHelper.Call("setAdExtraData", placementId, mapJson);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("ATInterstitialAdClient:setAutoLocalExtra() : error." + e.Message);
- }
- }
- public void entryAutoAdScenarioWithPlacementID(string placementId, string scenarioID)
- {
- Debug.Log("Unity: ATInterstitialAdClient:entryAutoAdScenarioWithPlacementID()");
- try
- {
- interstitialAutoAdHelper.Call("entryAdScenario", placementId, scenarioID);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("ATInterstitialAdClient:entryAutoAdScenarioWithPlacementID() : error." + e.Message);
- }
- }
- public void showAutoAd(string placementId, string mapJson)
- {
- Debug.Log("Unity: ATInterstitialAdClient::showAutoAd()");
- try
- {
- interstitialAutoAdHelper.Call("show", placementId, mapJson);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("Unity: ATInterstitialAdClient:showAutoAd() : error." + e.Message);
- }
- }
-
- public string checkAutoAdStatus(string placementId)
- {
- Debug.Log("Unity: ATInterstitialAdClient:checkAutoAdStatus() : checkAutoAdStatus....");
- string adStatusJsonString = "";
- try
- {
- adStatusJsonString = interstitialAutoAdHelper.Call<string>("checkAdStatus", placementId);
- }
- catch (System.Exception e)
- {
- System.Console.WriteLine("Exception caught: {0}", e);
- Debug.Log("Unity: ATInterstitialAdClient:checkAutoAdStatus() : error." + e.Message);
- }
- return adStatusJsonString;
- }
-
- }
- }
|