From 6774b4af7ac214f5c0e88b574b4d2621fb71ff40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=89=E5=B3=B0?= Date: Tue, 2 Sep 2025 18:06:58 +0800 Subject: [PATCH] =?UTF-8?q?Native=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Script/SDKManager/AppSDKManager.cs | 103 +++++++++++++++++++++- 1 file changed, 100 insertions(+), 3 deletions(-) diff --git a/Assets/Script/SDKManager/AppSDKManager.cs b/Assets/Script/SDKManager/AppSDKManager.cs index ed13776..ceb2f18 100644 --- a/Assets/Script/SDKManager/AppSDKManager.cs +++ b/Assets/Script/SDKManager/AppSDKManager.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; using AdjustSdk; using EFSDK; using Firebase.RemoteConfig; +using GoogleMobileAds.Api; using Newtonsoft.Json; using ThinkingAnalytics; using UnityEngine; @@ -134,22 +135,118 @@ public class AppSDKManager : D_MonoSingleton public bool IsNativeFullReady() { - return false; + var adUnitId = StaticValue.AdmobFullNativeId; + return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); } - public void ShowFullNative(string position, Action callback = null) + public void ShowFullNative(RectTransform rectTransform, Camera pCom = null, string position = "") { + if (!IsNativeFullReady()) + { + return; + } + var adUnitId = StaticValue.AdmobFullNativeId; + var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Medium, + MainBackgroundColor = Color.white + }, rectTransform, pCom); + + AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); } - public void ShowNative(RectTransform rectTransform, Camera camera = null, string position = "") + public void HideFullNative() { + var adUnitId = StaticValue.AdmobFullNativeId; + AdsSDKManager.Instance.RemoveNativeAd(adUnitId); + } + + public bool IsNativeReady() + { + var adUnitId = StaticValue.AdmobNativeId; + return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); + } + + public void ShowNative(RectTransform rectTransform, Camera pCom = null, string position = "") + { + if (!IsNativeReady()) + { + return; + } + var adUnitId = StaticValue.AdmobNativeId; + var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Medium, + MainBackgroundColor = Color.white + }, rectTransform, pCom); + + AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); } public void HideNative() { + var adUnitId = StaticValue.AdmobNativeId; + AdsSDKManager.Instance.RemoveNativeAd(adUnitId); + } + + public bool IsSmallNativeReady() + { + var adUnitId = StaticValue.AdmobSmallNativeId; + return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); + } + + public void ShowSmallNative(RectTransform rectTransform, Camera pCom = null, string position = "") + { + if (!IsSmallNativeReady()) + { + return; + } + var adUnitId = StaticValue.AdmobSmallNativeId; + var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Medium, + MainBackgroundColor = Color.white + }, rectTransform, pCom); + + AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); + } + + public void HideSmallNative() + { + var adUnitId = StaticValue.AdmobSmallNativeId; + AdsSDKManager.Instance.RemoveNativeAd(adUnitId); + } + + public bool IsMinddleNativeReady() + { + var adUnitId = StaticValue.AdmobMinddleNativeId; + return AdsSDKManager.Instance.IsNativeAdReady(adUnitId); + } + + public void ShowMinddleNative(RectTransform rectTransform, Camera pCom = null, string position = "") + { + if (!IsSmallNativeReady()) + { + return; + } + + var adUnitId = StaticValue.AdmobMinddleNativeId; + var nativeAdPosition = NativeAdPosition.Create(new NativeTemplateStyle + { + TemplateId = NativeTemplateId.Medium, + MainBackgroundColor = Color.white + }, rectTransform, pCom); + + AdsSDKManager.Instance.ShowNativeAd(position, adUnitId, nativeAdPosition); + } + + public void HideMinddleNative() + { + var adUnitId = StaticValue.AdmobMinddleNativeId; + AdsSDKManager.Instance.RemoveNativeAd(adUnitId); } #endregion