修复报错

This commit is contained in:
juncong lee 2025-09-01 11:39:21 +08:00
parent f243a3703e
commit b46582b837
4 changed files with 25 additions and 16 deletions

View File

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Diagnostics;
using GoogleMobileAds.Api; using GoogleMobileAds.Api;
using Script.Common; using Script.Common;
using Script.SDKManager.AdsSDKManager.Constant; using Script.SDKManager.AdsSDKManager.Constant;
@ -18,11 +19,11 @@ namespace Script.SDKManager.AdsSDKManager.AdmobAdsManager
private AdmobRewardedAdManager _admobRewardedAdManager; private AdmobRewardedAdManager _admobRewardedAdManager;
private AdmobNativeAdManager _admobNativeAdManager; private AdmobNativeAdManager _admobNativeAdManager;
private AdmobSplashAdManager _admobSplashAdManager; private AdmobSplashAdManager _admobSplashAdManager;
private List<string> _interstitialAdUnits; private List<string> _interstitialAdUnits = new List<string>();
private List<string> _rewardedAdUnits; private List<string> _rewardedAdUnits = new List<string>();
private List<string> _nativeAdUnits; private List<string> _nativeAdUnits = new List<string>();
private List<string> _splashAdUnits; private List<string> _splashAdUnits = new List<string>();
private List<string> _bannerAdUnits; private List<string> _bannerAdUnits = new List<string>();
private string _rvPos; private string _rvPos;
private string _ivPos; private string _ivPos;
@ -36,6 +37,10 @@ namespace Script.SDKManager.AdsSDKManager.AdmobAdsManager
{ {
MobileAds.RaiseAdEventsOnUnityMainThread = true; MobileAds.RaiseAdEventsOnUnityMainThread = true;
_bannerAdUnits = AdConfigParser.GetAdmobAdUnits(AdsType.Banner); _bannerAdUnits = AdConfigParser.GetAdmobAdUnits(AdsType.Banner);
_interstitialAdUnits = AdConfigParser.GetAdmobAdUnits(AdsType.Interstitial);
_nativeAdUnits = AdConfigParser.GetAdmobAdUnits(AdsType.Native);
_splashAdUnits = AdConfigParser.GetAdmobAdUnits(AdsType.Splash);
_rewardedAdUnits = AdConfigParser.GetAdmobAdUnits(AdsType.Rewarded);
MobileAds.Initialize(initStatus => MobileAds.Initialize(initStatus =>
{ {
if (_bannerAdUnits.Count > 0) if (_bannerAdUnits.Count > 0)
@ -62,8 +67,8 @@ namespace Script.SDKManager.AdsSDKManager.AdmobAdsManager
#region 广 #region 广
public void LoadRewarded() public void LoadRewarded()
{ {
_admobRewardedAdManager.Destroy();
_admobRewardedAdManager = new AdmobRewardedAdManager(); _admobRewardedAdManager = new AdmobRewardedAdManager();
_admobRewardedAdManager.Destroy();
_admobRewardedAdManager.InitializeAdUnits( _admobRewardedAdManager.InitializeAdUnits(
_rewardedAdUnits, _rewardedAdUnits,
OnRewardedAdLoaded, OnRewardedAdLoaded,
@ -139,8 +144,8 @@ namespace Script.SDKManager.AdsSDKManager.AdmobAdsManager
#region 广 #region 广
public void LoadInterstitial() public void LoadInterstitial()
{ {
_admobInterstitialAdManager.Destroy();
_admobInterstitialAdManager = new AdmobInterstitialAdManager(); _admobInterstitialAdManager = new AdmobInterstitialAdManager();
_admobInterstitialAdManager.Destroy();
_admobInterstitialAdManager.InitializeAdUnits( _admobInterstitialAdManager.InitializeAdUnits(
_interstitialAdUnits, _interstitialAdUnits,
OnInterstitialAdLoaded, OnInterstitialAdLoaded,
@ -214,8 +219,8 @@ namespace Script.SDKManager.AdsSDKManager.AdmobAdsManager
#region 广 #region 广
public void LoadSplash() public void LoadSplash()
{ {
_admobSplashAdManager.Destroy();
_admobSplashAdManager = new AdmobSplashAdManager(); _admobSplashAdManager = new AdmobSplashAdManager();
_admobSplashAdManager.Destroy();
_admobSplashAdManager.InitializeAdUnits( _admobSplashAdManager.InitializeAdUnits(
_splashAdUnits, _splashAdUnits,
OnSplashAdLoaded, OnSplashAdLoaded,

View File

@ -17,8 +17,8 @@ namespace Script.SDKManager.AdsSDKManager.BigoAdsManager
public string ClientName => "Bigo"; public string ClientName => "Bigo";
private BigoRewardedAdManager _rewardedAdManager; private BigoRewardedAdManager _rewardedAdManager;
private BigoInterstitialAdManager _interstitialAdManager; private BigoInterstitialAdManager _interstitialAdManager;
private List<string> _interstitialAdUnits; private List<string> _interstitialAdUnits = new List<string>();
private List<string> _rewardedAdUnits; private List<string> _rewardedAdUnits = new List<string>();
public string bigo_app_id; public string bigo_app_id;
private bool _initialized; private bool _initialized;
private string _rvPos; private string _rvPos;
@ -111,7 +111,7 @@ namespace Script.SDKManager.AdsSDKManager.BigoAdsManager
public void LoadRewarded() public void LoadRewarded()
{ {
_rewardedAdManager.Destroy(); _rewardedAdManager?.Destroy();
foreach (var adUnitId in _rewardedAdUnits) foreach (var adUnitId in _rewardedAdUnits)
{ {
_rewardedAdManager.LoadAd(adUnitId); _rewardedAdManager.LoadAd(adUnitId);
@ -174,7 +174,7 @@ namespace Script.SDKManager.AdsSDKManager.BigoAdsManager
public void LoadInterstitial() public void LoadInterstitial()
{ {
_interstitialAdManager.Destroy(); _interstitialAdManager?.Destroy();
foreach (var adUnitId in _interstitialAdUnits) foreach (var adUnitId in _interstitialAdUnits)
{ {
_interstitialAdManager.LoadAd(adUnitId); _interstitialAdManager.LoadAd(adUnitId);

View File

@ -1,6 +1,7 @@
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Net.Security; using System.Net.Security;
using Firebase.Analytics; using Firebase.Analytics;
using Script.Common; using Script.Common;
@ -33,8 +34,8 @@ namespace Script.SDKManager.AdsSDKManager.MaxAdsManager
public void Initialize() public void Initialize()
{ {
max_app_key = AdConfigParser.GetMaxAppKey(); max_app_key = AdConfigParser.GetMaxAppKey();
max_interstitial_units = AdConfigParser.GetMaxAdUnits(AdsType.Interstitial).ToArray()[0]; max_interstitial_units = AdConfigParser.GetMaxAdUnits(AdsType.Interstitial).FirstOrDefault();
max_rewarded_units = AdConfigParser.GetMaxAdUnits(AdsType.Rewarded).ToArray()[0]; max_rewarded_units = AdConfigParser.GetMaxAdUnits(AdsType.Rewarded).FirstOrDefault();
if (string.IsNullOrEmpty(max_app_key)) return; if (string.IsNullOrEmpty(max_app_key)) return;
LoggerUtils.Debug("[Max] init max"); LoggerUtils.Debug("[Max] init max");
// 关闭反转debug面板 // 关闭反转debug面板
@ -69,6 +70,7 @@ namespace Script.SDKManager.AdsSDKManager.MaxAdsManager
} }
public void LoadRewarded() public void LoadRewarded()
{ {
if (string.IsNullOrEmpty(max_rewarded_units)) return;
MaxSdk.LoadRewardedAd(max_rewarded_units); MaxSdk.LoadRewardedAd(max_rewarded_units);
} }
public void DisplayRewarded(string adPos, Action<bool> rewardCallback = null, Action showFailedCallback = null) public void DisplayRewarded(string adPos, Action<bool> rewardCallback = null, Action showFailedCallback = null)
@ -160,6 +162,7 @@ namespace Script.SDKManager.AdsSDKManager.MaxAdsManager
public void LoadInterstitial() public void LoadInterstitial()
{ {
if (string.IsNullOrEmpty(max_rewarded_units)) return;
MaxSdk.LoadInterstitial(max_interstitial_units); MaxSdk.LoadInterstitial(max_interstitial_units);
} }
public double GetInterstitialRevenue() public double GetInterstitialRevenue()

View File

@ -1,6 +1,7 @@
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Threading; using System.Threading;
using AnyThinkAds.Api; using AnyThinkAds.Api;
using AnyThinkAds.ThirdParty.LitJson; using AnyThinkAds.ThirdParty.LitJson;
@ -31,8 +32,8 @@ namespace Script.SDKManager.AdsSDKManager.TpnAdsManager
{ {
topon_app_id = AdConfigParser.GetTopOnAppId(); topon_app_id = AdConfigParser.GetTopOnAppId();
topon_app_key = AdConfigParser.GetTopOnAppKey(); topon_app_key = AdConfigParser.GetTopOnAppKey();
topon_interstitial_units = AdConfigParser.GetTopOnAdUnits(AdsType.Interstitial).ToArray()[0]; topon_interstitial_units = AdConfigParser.GetTopOnAdUnits(AdsType.Interstitial).FirstOrDefault();
topon_rewarded_units = AdConfigParser.GetTopOnAdUnits(AdsType.Rewarded).ToArray()[0]; topon_rewarded_units = AdConfigParser.GetTopOnAdUnits(AdsType.Rewarded).FirstOrDefault();
LoggerUtils.Debug("[Tpn] 初始化 Tpn 广告 SDK appid:" + topon_app_id + " appkey:" + topon_app_key + " ivId:" + topon_interstitial_units + " rvId:" + topon_rewarded_units); LoggerUtils.Debug("[Tpn] 初始化 Tpn 广告 SDK appid:" + topon_app_id + " appkey:" + topon_app_key + " ivId:" + topon_interstitial_units + " rvId:" + topon_rewarded_units);
if (!string.IsNullOrEmpty(topon_app_id) && !string.IsNullOrEmpty(topon_app_key)) if (!string.IsNullOrEmpty(topon_app_id) && !string.IsNullOrEmpty(topon_app_key))
{ {