101 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			101 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System.Collections; | |||
|  | using System.Collections.Generic; | |||
|  | using UnityEngine; | |||
|  | using System.Reflection; | |||
|  | using System; | |||
|  | 
 | |||
|  | using AnyThinkAds.Common; | |||
|  | using AnyThinkAds.ThirdParty.LitJson; | |||
|  | 
 | |||
|  | 
 | |||
|  | namespace AnyThinkAds.Api | |||
|  | { | |||
|  |     public class ATNativeAdLoadingExtra | |||
|  |     { | |||
|  |         public static readonly string kATNativeAdLoadingExtraNativeAdSizeStruct = "native_ad_size_struct"; | |||
|  |         public static readonly string kATNativeAdLoadingExtraNativeAdSize = "native_ad_size"; | |||
|  |         public static readonly string kATNativeAdSizeUsesPixelFlagKey = "uses_pixel"; | |||
|  |     } | |||
|  | 
 | |||
|  |     public class ATNativeAd | |||
|  |     { | |||
|  | 
 | |||
|  |         private static readonly ATNativeAd instance = new ATNativeAd(); | |||
|  |         public IATNativeAdClient client; | |||
|  | 
 | |||
|  |         public ATNativeAd(){ | |||
|  |             client = GetATNativeAdClient(); | |||
|  |         } | |||
|  | 
 | |||
|  |         public static ATNativeAd Instance | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return instance; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         public void loadNativeAd(string placementId, Dictionary<String,object> pairs){ | |||
|  |             if (pairs != null && pairs.ContainsKey(ATNativeAdLoadingExtra.kATNativeAdLoadingExtraNativeAdSizeStruct)) | |||
|  |             { | |||
|  |                 ATSize size = (ATSize)(pairs[ATNativeAdLoadingExtra.kATNativeAdLoadingExtraNativeAdSizeStruct]); | |||
|  |                 pairs.Add(ATNativeAdLoadingExtra.kATNativeAdLoadingExtraNativeAdSize, size.width + "x" + size.height); | |||
|  |                 pairs.Add(ATNativeAdLoadingExtra.kATNativeAdSizeUsesPixelFlagKey, size.usesPixel); | |||
|  |             } | |||
|  |             client.loadNativeAd(placementId,JsonMapper.ToJson(pairs)); | |||
|  |         } | |||
|  | 
 | |||
|  |         public bool hasAdReady(string placementId){ | |||
|  |             return client.hasAdReady(placementId); | |||
|  |         } | |||
|  | 
 | |||
|  |         public string checkAdStatus(string placementId) | |||
|  |         { | |||
|  |             return client.checkAdStatus(placementId); | |||
|  |         } | |||
|  | 
 | |||
|  |         public string getValidAdCaches(string placementId) | |||
|  |         { | |||
|  |             return client.getValidAdCaches(placementId); | |||
|  |         } | |||
|  | 
 | |||
|  |          | |||
|  |         public void entryScenarioWithPlacementID(string placementId, string scenarioID) | |||
|  |         { | |||
|  |             client.entryScenarioWithPlacementID(placementId,scenarioID); | |||
|  |         } | |||
|  | 
 | |||
|  |         public void renderAdToScene(string placementId, ATNativeAdView anyThinkNativeAdView){ | |||
|  |             client.renderAdToScene(placementId, anyThinkNativeAdView, ""); | |||
|  |         } | |||
|  | 
 | |||
|  |         public void renderAdToScene(string placementId, ATNativeAdView anyThinkNativeAdView, Dictionary<string,string> pairs){ | |||
|  |             client.renderAdToScene(placementId, anyThinkNativeAdView, JsonMapper.ToJson(pairs)); | |||
|  |         } | |||
|  | 
 | |||
|  |         public void cleanAdView(string placementId, ATNativeAdView anyThinkNativeAdView){ | |||
|  |             client.cleanAdView(placementId, anyThinkNativeAdView); | |||
|  |         } | |||
|  | 
 | |||
|  |         public void onApplicationForces(string placementId, ATNativeAdView anyThinkNativeAdView){ | |||
|  |             client.onApplicationForces(placementId, anyThinkNativeAdView); | |||
|  |         } | |||
|  | 
 | |||
|  |         public void onApplicationPasue(string placementId, ATNativeAdView anyThinkNativeAdView){ | |||
|  |             client.onApplicationPasue(placementId, anyThinkNativeAdView); | |||
|  |         } | |||
|  | 
 | |||
|  |         public void cleanCache(string placementId){ | |||
|  |             client.cleanCache(placementId); | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |         public IATNativeAdClient GetATNativeAdClient() | |||
|  |         { | |||
|  |             return AnyThinkAds.ATAdsClientFactory.BuildNativeAdClient(); | |||
|  |         } | |||
|  | 
 | |||
|  |     } | |||
|  | } |