234 lines
9.7 KiB
C#
234 lines
9.7 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using AnyThinkAds.Common;
|
|
using AnyThinkAds.Api;
|
|
using AnyThinkAds.ThirdParty.LitJson;
|
|
|
|
|
|
namespace AnyThinkAds.iOS {
|
|
|
|
public class ATSplashAdClient : IATSplashAdClient {
|
|
private ATSplashAdListener anyThinkListener;
|
|
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;
|
|
public event EventHandler<ATAdEventArgs> onAdLoadTimeoutEvent;
|
|
public event EventHandler<ATAdEventArgs> onDeeplinkEvent;
|
|
public event EventHandler<ATAdEventArgs> onDownloadConfirmEvent;
|
|
|
|
public void addsetting(string placementId,string json){
|
|
//todo...
|
|
}
|
|
|
|
public void setListener(ATSplashAdListener listener) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::setListener()");
|
|
anyThinkListener = listener;
|
|
}
|
|
|
|
public void loadSplashAd(string placementId, int fetchAdTimeout, string defaultAdSourceConfig, string mapJson) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::loadSplashAd()");
|
|
ATSplashAdWrapper.setClientForPlacementID(placementId, this);
|
|
ATSplashAdWrapper.loadSplashAd(placementId, mapJson);
|
|
}
|
|
|
|
public bool hasSplashAdReady(string placementId) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::hasSplashAdReady()");
|
|
return ATSplashAdWrapper.hasSplashAdReady(placementId);
|
|
}
|
|
|
|
public void showSplashAd(string placementId, string mapJson) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::showSplashAd()");
|
|
ATSplashAdWrapper.showSplashAd(placementId, mapJson);
|
|
}
|
|
|
|
public void cleanCache(string placementId) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::cleanCache()");
|
|
ATSplashAdWrapper.clearCache(placementId);
|
|
}
|
|
|
|
public string checkAdStatus(string placementId) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::checkAdStatus()");
|
|
return ATSplashAdWrapper.checkAdStatus(placementId);
|
|
}
|
|
|
|
public string getValidAdCaches(string placementId)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::getValidAdCaches()");
|
|
return ATSplashAdWrapper.getValidAdCaches(placementId);
|
|
}
|
|
|
|
public void entryScenarioWithPlacementID(string placementId, string scenarioID){
|
|
Debug.Log("Unity: ATSplashAdAdClient::entryScenarioWithPlacementID()");
|
|
ATSplashAdWrapper.entryScenarioWithPlacementID(placementId,scenarioID);
|
|
}
|
|
|
|
|
|
//Callbacks
|
|
public void OnSplashAdDeeplink(string placementID, String callbackJson, bool isSuccess) {
|
|
onDeeplinkEvent?.Invoke(this, new ATAdEventArgs(placementID, callbackJson, false, isSuccess));
|
|
}
|
|
|
|
public void OnSplashAdLoadTimeout(string placementID) {
|
|
Debug.Log("OnSplashAdLoadTimeout...unity3d.");
|
|
onAdLoadTimeoutEvent?.Invoke(this, new ATAdEventArgs(placementID, "", true));
|
|
}
|
|
|
|
public void OnSplashAdLoaded(string placementID) {
|
|
Debug.Log("onSplashAdLoaded...unity3d.");
|
|
onAdLoadEvent?.Invoke(this, new ATAdEventArgs(placementID));
|
|
}
|
|
|
|
public void OnSplashAdLoadFailure(string placementID, string code, string error) {
|
|
Debug.Log("onSplashAdFailed...unity3d.");
|
|
onAdLoadFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementID, code, error));
|
|
}
|
|
|
|
public void OnSplashAdVideoPlayFailure(string placementID, string code, string error) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::OnSplashAdVideoPlayFailure()");
|
|
onAdVideoFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementID, code, error));
|
|
}
|
|
|
|
public void OnSplashAdVideoPlayStart(string placementID, string callbackJson) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::OnSplashAdPlayStart()");
|
|
onAdVideoStartEvent?.Invoke(this, new ATAdEventArgs(placementID, callbackJson));
|
|
}
|
|
|
|
public void OnSplashAdVideoPlayEnd(string placementID, string callbackJson) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::OnSplashAdVideoPlayEnd()");
|
|
onAdVideoEndEvent?.Invoke(this, new ATAdEventArgs(placementID, callbackJson));
|
|
}
|
|
|
|
public void OnSplashAdShow(string placementID, string callbackJson) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::OnSplashAdShow()");
|
|
onAdShowEvent?.Invoke(this, new ATAdEventArgs(placementID, callbackJson));
|
|
}
|
|
|
|
public void OnSplashAdFailedToShow(string placementID) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::OnSplashAdFailedToShow()");
|
|
onAdShowFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementID, "-1", "Failed to show video ad"));
|
|
}
|
|
|
|
public void OnSplashAdClick(string placementID, string callbackJson) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::OnSplashAdClick()");
|
|
onAdClickEvent?.Invoke(this, new ATAdEventArgs(placementID, callbackJson));
|
|
}
|
|
|
|
public void OnSplashAdClose(string placementID, string callbackJson) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::OnSplashAdClose()");
|
|
onAdCloseEvent?.Invoke(this, new ATAdEventArgs(placementID, callbackJson));
|
|
}
|
|
|
|
//auto callbacks
|
|
public void startLoadingADSource(string placementId, string callbackJson)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::startLoadingADSource()");
|
|
onAdSourceAttemptEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
|
|
}
|
|
public void finishLoadingADSource(string placementId, string callbackJson)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::finishLoadingADSource()");
|
|
onAdSourceFilledEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
|
|
}
|
|
public void failToLoadADSource(string placementId, string callbackJson,string code, string error)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::failToLoadADSource()");
|
|
onAdSourceLoadFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, callbackJson, code, error));
|
|
}
|
|
public void startBiddingADSource(string placementId, string callbackJson)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::startBiddingADSource()");
|
|
onAdSourceBiddingAttemptEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
|
|
}
|
|
public void finishBiddingADSource(string placementId, string callbackJson)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::finishBiddingADSource()");
|
|
onAdSourceBiddingFilledEvent?.Invoke(this, new ATAdEventArgs(placementId, callbackJson));
|
|
}
|
|
public void failBiddingADSource(string placementId,string callbackJson, string code, string error)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::failBiddingADSource()");
|
|
onAdSourceBiddingFailureEvent?.Invoke(this, new ATAdErrorEventArgs(placementId, callbackJson, code, error));
|
|
}
|
|
|
|
// Auto
|
|
public void addAutoLoadAdPlacementID(string[] placementIDList)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient:addAutoLoadAdPlacementID()");
|
|
|
|
|
|
|
|
if (placementIDList != null && placementIDList.Length > 0)
|
|
{
|
|
foreach (string placementID in placementIDList)
|
|
{
|
|
ATSplashAdWrapper.setClientForPlacementID(placementID, this);
|
|
}
|
|
|
|
string placementIDListString = JsonMapper.ToJson(placementIDList);
|
|
ATSplashAdWrapper.addAutoLoadAdPlacementID(placementIDListString);
|
|
Debug.Log("addAutoLoadAdPlacementID, placementIDList === " + placementIDListString);
|
|
}
|
|
else
|
|
{
|
|
Debug.Log("addAutoLoadAdPlacementID, placementIDList = null");
|
|
}
|
|
|
|
}
|
|
|
|
public void removeAutoLoadAdPlacementID(string placementId)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient:removeAutoLoadAdPlacementID()");
|
|
ATSplashAdWrapper.removeAutoLoadAdPlacementID(placementId);
|
|
}
|
|
|
|
public bool autoLoadSplashAdReadyForPlacementID(string placementId)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient:autoLoadSplashAdReadyForPlacementID()");
|
|
return ATSplashAdWrapper.autoLoadSplashAdReadyForPlacementID(placementId);
|
|
}
|
|
public string getAutoValidAdCaches(string placementId)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient:getAutoValidAdCaches()");
|
|
return ATSplashAdWrapper.getAutoValidAdCaches(placementId);
|
|
}
|
|
|
|
public string checkAutoAdStatus(string placementId) {
|
|
Debug.Log("Unity: ATSplashAdAdClient::checkAutoAdStatus()");
|
|
return ATSplashAdWrapper.checkAutoAdStatus(placementId);
|
|
}
|
|
|
|
|
|
public void setAutoLocalExtra(string placementId, string mapJson)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient:setAutoLocalExtra()");
|
|
ATSplashAdWrapper.setAutoLocalExtra(placementId, mapJson);
|
|
}
|
|
public void entryAutoAdScenarioWithPlacementID(string placementId, string scenarioID)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient:entryAutoAdScenarioWithPlacementID()");
|
|
ATSplashAdWrapper.entryAutoAdScenarioWithPlacementID(placementId, scenarioID);
|
|
}
|
|
public void showAutoAd(string placementId, string mapJson)
|
|
{
|
|
Debug.Log("Unity: ATSplashAdAdClient::showAutoAd()");
|
|
ATSplashAdWrapper.showAutoSplashAd(placementId, mapJson);
|
|
}
|
|
|
|
|
|
}
|
|
}
|