广告关闭时返回收益
This commit is contained in:
parent
3d4d79b52f
commit
f3df0ff6a6
|
@ -66,7 +66,7 @@ namespace WZ
|
|||
/// <summary>
|
||||
/// 显示插页广告
|
||||
/// </summary>
|
||||
void DisplayInterstitial(string _adPos, IvType _IvType = IvType.IV1, Action _closeCallback = null);
|
||||
void DisplayInterstitial(string _adPos, IvType _IvType = IvType.IV1, Action<double> _closeCallback = null);
|
||||
|
||||
/// <summary>
|
||||
/// 获取插页广告收益信息
|
||||
|
@ -90,7 +90,7 @@ namespace WZ
|
|||
/// <summary>
|
||||
/// 显示激励广告
|
||||
/// </summary>
|
||||
void DisplayRewarded(string _adPos, Action<bool> _rewardCallback = null, Action _showFailedCallback = null);
|
||||
void DisplayRewarded(string _adPos, Action<bool,double> _rewardCallback = null, Action _showFailedCallback = null);
|
||||
|
||||
/// <summary>
|
||||
/// 获取激励广告收益信息
|
||||
|
|
|
@ -24,8 +24,8 @@ namespace WZ
|
|||
private List<string> _bannerAdUnits = new List<string>();
|
||||
private string _rvPos;
|
||||
private string _ivPos;
|
||||
private Action<bool> _rvCloseCallback = null;
|
||||
private Action _ivCloseCallback = null;
|
||||
private Action<bool,double> _rvCloseCallback = null;
|
||||
private Action<double> _ivCloseCallback = null;
|
||||
private Action _rvShowFailedCallback = null;
|
||||
private bool _initialized = false;
|
||||
private float _rvStartLoadTime = 0;
|
||||
|
@ -77,7 +77,7 @@ namespace WZ
|
|||
_rvStartLoadTime = Time.realtimeSinceStartup;
|
||||
AdsActionEvents.TrackAdStartLoad(Platfrom, "", "", AdsType.Rewarded);
|
||||
}
|
||||
public void DisplayRewarded(string adPos, Action<bool> rewardCallback = null, Action showFailedCallback = null)
|
||||
public void DisplayRewarded(string adPos, Action<bool,double> rewardCallback = null, Action showFailedCallback = null)
|
||||
{
|
||||
_rvPos = adPos;
|
||||
_rvCloseCallback = rewardCallback;
|
||||
|
@ -114,7 +114,7 @@ namespace WZ
|
|||
private void OnRewardedAdDismissed(string adSource,string adUnitId,double revenue)
|
||||
{
|
||||
AdsActionEvents.TrackAdClosed(Platfrom,adSource,adUnitId,AdsType.Rewarded,_rvPos,revenue);
|
||||
_rvCloseCallback?.Invoke(true);
|
||||
_rvCloseCallback?.Invoke(true,revenue);
|
||||
_rvCloseCallback = null;
|
||||
LoadRewarded();
|
||||
}
|
||||
|
@ -162,7 +162,7 @@ namespace WZ
|
|||
return _admobInterstitialAdManager.GetHighestPayingAdRevenue();
|
||||
}
|
||||
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action closeCallback = null)
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action<double> closeCallback = null)
|
||||
{
|
||||
_ivPos = ivPos;
|
||||
_ivCloseCallback = closeCallback;
|
||||
|
@ -201,7 +201,7 @@ namespace WZ
|
|||
private void OnInterstitialAdDismissed(string adSource,string adUnitId,double revenue)
|
||||
{
|
||||
AdsActionEvents.TrackAdClosed(Platfrom, adSource, adUnitId, AdsType.Interstitial, "", revenue);
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(revenue);
|
||||
_ivCloseCallback = null;
|
||||
LoadInterstitial();
|
||||
}
|
||||
|
@ -209,7 +209,7 @@ namespace WZ
|
|||
private void OnInterstitialAdError(string adUnitId, int errorCode, string errorMsg)
|
||||
{
|
||||
AdsActionEvents.TrackAdFailToShow(Platfrom,AdsType.Interstitial,errorMsg,"");
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(0);
|
||||
_ivCloseCallback = null;
|
||||
LoadInterstitial();
|
||||
}
|
||||
|
|
|
@ -63,7 +63,7 @@ namespace WZ
|
|||
/// 展示激励广告
|
||||
/// </summary>
|
||||
/// <param name="callback"></param>
|
||||
public void ShowRewardAd(string _adPos, Action<bool> _rewardCallback = null, Action _showFailedCallback = null)
|
||||
public void ShowRewardAd(string _adPos, Action<bool,double> _rewardCallback = null, Action _showFailedCallback = null)
|
||||
{
|
||||
AdsActionEvents.TrackAdPosition(AdsType.Rewarded, _adPos);
|
||||
if (!IsRewardAdReady())
|
||||
|
@ -110,12 +110,12 @@ namespace WZ
|
|||
/// 展示激励广告
|
||||
/// </summary>
|
||||
/// <param name="callback"></param>
|
||||
public void ShowInterstitialAd(string _adPos, IvType _IvType = IvType.IV1, Action _closeCallback = null)
|
||||
public void ShowInterstitialAd(string _adPos, IvType _IvType = IvType.IV1, Action<double> _closeCallback = null)
|
||||
{
|
||||
AdsActionEvents.TrackAdPosition(AdsType.Interstitial, _adPos);
|
||||
if (!IsRewardAdReady())
|
||||
{
|
||||
_closeCallback?.Invoke();
|
||||
_closeCallback?.Invoke(0);
|
||||
_closeCallback = null;
|
||||
return;
|
||||
}
|
||||
|
@ -144,7 +144,7 @@ namespace WZ
|
|||
}
|
||||
else
|
||||
{
|
||||
_closeCallback?.Invoke();
|
||||
_closeCallback?.Invoke(0);
|
||||
}
|
||||
|
||||
AdPlayCountManager.IncrementAdPlayCount(AdsType.Interstitial);
|
||||
|
|
|
@ -19,8 +19,8 @@ namespace WZ
|
|||
private bool _initialized;
|
||||
private string _rvPos;
|
||||
private string _IvPos;
|
||||
private Action<bool> _rvCloseCallback = null;
|
||||
private Action _ivCloseCallback = null;
|
||||
private Action<bool,double> _rvCloseCallback = null;
|
||||
private Action<double> _ivCloseCallback = null;
|
||||
private Action _rvShowFailedCallback = null;
|
||||
|
||||
private float _rvStartLoadTime = 0;
|
||||
|
@ -56,7 +56,7 @@ namespace WZ
|
|||
// 各个回调处理方法
|
||||
private void OnRewardedAdLoaded(string adUnitId)
|
||||
{
|
||||
|
||||
AdsActionEvents.TrackAdLoaded(Platfrom,ClientName, adUnitId, AdsType.Rewarded,Time.realtimeSinceStartup - _rvStartLoadTime);
|
||||
}
|
||||
|
||||
private void OnRewardedAdLoadFailed(string adUnitId, int code, string msg)
|
||||
|
@ -68,10 +68,10 @@ namespace WZ
|
|||
{
|
||||
|
||||
}
|
||||
private void OnRewardedAdDismissed(string adUnitId)
|
||||
private void OnRewardedAdDismissed(string adUnitId,double revenue)
|
||||
{
|
||||
AdsActionEvents.TrackAdClosed(Platfrom,ClientName, adUnitId, AdsType.Rewarded, _rvPos, GetRewardedRevenue());
|
||||
_rvCloseCallback?.Invoke(true);
|
||||
AdsActionEvents.TrackAdClosed(Platfrom,ClientName, adUnitId, AdsType.Rewarded, _rvPos, revenue);
|
||||
_rvCloseCallback?.Invoke(true,revenue);
|
||||
_rvCloseCallback = null;
|
||||
LoadRewarded();
|
||||
|
||||
|
@ -85,9 +85,9 @@ namespace WZ
|
|||
LoadRewarded();
|
||||
}
|
||||
|
||||
private void OnRewardedAdClicked(string adUnitId)
|
||||
private void OnRewardedAdClicked(string adUnitId,double revenue)
|
||||
{
|
||||
AdsActionEvents.TrackAdClicked(Platfrom,ClientName,adUnitId,AdsType.Rewarded,_rvPos,GetRewardedRevenue());
|
||||
AdsActionEvents.TrackAdClicked(Platfrom,ClientName,adUnitId,AdsType.Rewarded,_rvPos,revenue);
|
||||
}
|
||||
|
||||
public void LoadRewarded()
|
||||
|
@ -117,7 +117,7 @@ namespace WZ
|
|||
return _rewardedAdManager.GetAvailableAdUnits().Count > 0;
|
||||
}
|
||||
|
||||
public void DisplayRewarded(string adPos, Action<bool> rewardCallback = null, Action showFailedCallback = null)
|
||||
public void DisplayRewarded(string adPos, Action<bool,double> rewardCallback = null, Action showFailedCallback = null)
|
||||
{
|
||||
_rvPos = adPos;
|
||||
_rvCloseCallback = rewardCallback;
|
||||
|
@ -133,7 +133,7 @@ namespace WZ
|
|||
#region 插页广告功能
|
||||
private void OnInterstitialAdLoaded(string adUnitId)
|
||||
{
|
||||
|
||||
AdsActionEvents.TrackAdLoaded(Platfrom,ClientName, adUnitId, AdsType.Interstitial,Time.realtimeSinceStartup - _ivStartLoadTime);
|
||||
}
|
||||
|
||||
private void OnInterstitialAdLoadFailed(string adUnitId, int code, string msg)
|
||||
|
@ -145,10 +145,10 @@ namespace WZ
|
|||
{
|
||||
|
||||
}
|
||||
private void OnInterstitialAdDismissed(string adUnitId)
|
||||
private void OnInterstitialAdDismissed(string adUnitId,double revenue)
|
||||
{
|
||||
AdsActionEvents.TrackAdClosed(Platfrom,ClientName, adUnitId, AdsType.Interstitial, "", GetInterstitialRevenue());
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(revenue);
|
||||
_ivCloseCallback = null;
|
||||
LoadInterstitial();
|
||||
}
|
||||
|
@ -156,7 +156,7 @@ namespace WZ
|
|||
private void OnInterstitialAdError(string adUnitId, int code, string msg)
|
||||
{
|
||||
AdsActionEvents.TrackAdFailToShow(Platfrom, AdsType.Interstitial, msg, "");
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(0);
|
||||
_ivCloseCallback = null;
|
||||
LoadInterstitial();
|
||||
|
||||
|
@ -194,7 +194,7 @@ namespace WZ
|
|||
return _interstitialAdManager.GetAvailableAdUnits().Count > 0;
|
||||
}
|
||||
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action closeCallback = null)
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action<double> closeCallback = null)
|
||||
{
|
||||
_IvPos = ivPos;
|
||||
_ivCloseCallback = closeCallback;
|
||||
|
|
|
@ -17,7 +17,7 @@ namespace WZ
|
|||
public void InitializeAdUnits(List<string> adUnitIds, Action<string> onAdLoaded = null,
|
||||
Action<string, int, string> onAdLoadFailed = null,
|
||||
Action<string> onAdShowed = null,
|
||||
Action<string> onAdDismissed = null,
|
||||
Action<string,double> onAdDismissed = null,
|
||||
Action<string, int, string> onAdError = null,
|
||||
Action<string> onAdClicked = null)
|
||||
{
|
||||
|
@ -30,7 +30,7 @@ namespace WZ
|
|||
private void CreateRewardedAd(string adUnitId, Action<string> onAdLoaded,
|
||||
Action<string, int, string> onAdLoadFailed,
|
||||
Action<string> onAdShowed,
|
||||
Action<string> onAdDismissed,
|
||||
Action<string,double> onAdDismissed,
|
||||
Action<string, int, string> onAdError,
|
||||
Action<string> onAdClicked)
|
||||
{
|
||||
|
@ -76,7 +76,7 @@ namespace WZ
|
|||
interstitialAd.OnAdDismissed += (() =>
|
||||
{
|
||||
LoggerUtils.Debug($"[Bigo] Interstitial -[interaction]: {adUnitId} dismiss");
|
||||
onAdDismissed?.Invoke(adUnitId);
|
||||
onAdDismissed?.Invoke(adUnitId,GetAdRevenue(interstitialAd));
|
||||
});
|
||||
|
||||
interstitialAd.OnAdError += ((code, msg) =>
|
||||
|
|
|
@ -17,9 +17,9 @@ namespace WZ
|
|||
public void InitializeAdUnits(List<string> adUnitIds, Action<string> onAdLoaded = null,
|
||||
Action<string, int, string> onAdLoadFailed = null,
|
||||
Action<string> onAdShowed = null,
|
||||
Action<string> onAdDismissed = null,
|
||||
Action<string,double> onAdDismissed = null,
|
||||
Action<string, int, string> onAdError = null,
|
||||
Action<string> onAdClicked = null)
|
||||
Action<string,double> onAdClicked = null)
|
||||
{
|
||||
foreach (var adUnitId in adUnitIds)
|
||||
{
|
||||
|
@ -30,9 +30,9 @@ namespace WZ
|
|||
private void CreateRewardedAd(string adUnitId, Action<string> onAdLoaded,
|
||||
Action<string, int, string> onAdLoadFailed,
|
||||
Action<string> onAdShowed,
|
||||
Action<string> onAdDismissed,
|
||||
Action<string, double> onAdDismissed,
|
||||
Action<string, int, string> onAdError,
|
||||
Action<string> onAdClicked)
|
||||
Action<string,double> onAdClicked)
|
||||
{
|
||||
if (_rewardedAds.ContainsKey(adUnitId))
|
||||
{
|
||||
|
@ -76,7 +76,7 @@ namespace WZ
|
|||
rewardedAd.OnAdDismissed += (() =>
|
||||
{
|
||||
LoggerUtils.Debug($"[Bigo] Rewarded-[interaction]: {adUnitId} dismiss");
|
||||
onAdDismissed?.Invoke(adUnitId);
|
||||
onAdDismissed?.Invoke(adUnitId,GetAdRevenue(rewardedAd));
|
||||
});
|
||||
|
||||
rewardedAd.OnAdError += ((code, msg) =>
|
||||
|
@ -87,7 +87,7 @@ namespace WZ
|
|||
|
||||
rewardedAd.OnAdClicked += () =>
|
||||
{
|
||||
onAdClicked?.Invoke(adUnitId);
|
||||
onAdClicked?.Invoke(adUnitId,GetAdRevenue(rewardedAd));
|
||||
};
|
||||
LoadAd(adUnitId);
|
||||
}
|
||||
|
|
|
@ -23,8 +23,8 @@ namespace WZ
|
|||
private float _ivStartLoadTime = 0;
|
||||
private string _rvPos;
|
||||
private string _ivPos;
|
||||
private Action<bool> _rvCloseCallback = null;
|
||||
private Action _ivCloseCallback = null;
|
||||
private Action<bool,double> _rvCloseCallback = null;
|
||||
private Action<double> _ivCloseCallback = null;
|
||||
private Action _rvShowFailedCallback = null;
|
||||
|
||||
public void Initialize()
|
||||
|
@ -77,7 +77,7 @@ namespace WZ
|
|||
AdsActionEvents.TrackAdStartLoad(Platfrom, "", "", AdsType.Rewarded);
|
||||
_rvStartLoadTime = Time.realtimeSinceStartup;
|
||||
}
|
||||
public void DisplayRewarded(string adPos, Action<bool> rewardCallback = null, Action showFailedCallback = null)
|
||||
public void DisplayRewarded(string adPos, Action<bool,double> rewardCallback = null, Action showFailedCallback = null)
|
||||
{
|
||||
_rvPos = adPos;
|
||||
_rvCloseCallback = rewardCallback;
|
||||
|
@ -150,7 +150,7 @@ namespace WZ
|
|||
|
||||
private void OnRewardedAdHiddenEvent(string adUnitId, MaxSdkBase.AdInfo adInfo)
|
||||
{
|
||||
_rvCloseCallback?.Invoke(true);
|
||||
_rvCloseCallback?.Invoke(true,adInfo.Revenue);
|
||||
_rvCloseCallback = null;
|
||||
LoadRewarded();
|
||||
LoggerUtils.Debug("[Max] OnRewardedAdHiddenEvent");
|
||||
|
@ -192,7 +192,7 @@ namespace WZ
|
|||
}
|
||||
}
|
||||
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action closeCallback = null)
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action<double> closeCallback = null)
|
||||
{
|
||||
_ivPos = ivPos;
|
||||
_ivCloseCallback = closeCallback;
|
||||
|
@ -226,7 +226,7 @@ namespace WZ
|
|||
private void OnInterstitialAdFailedToDisplayEvent(string adUnitId, MaxSdkBase.ErrorInfo errorInfo, MaxSdkBase.AdInfo arg3)
|
||||
{
|
||||
LoggerUtils.Debug("[Max] OnInterstitialAdFailedToDisplayEvent :" + errorInfo.Message + " " + errorInfo.Code + " " + errorInfo.MediatedNetworkErrorMessage + " " + errorInfo.MediatedNetworkErrorCode);
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(0);
|
||||
_ivCloseCallback = null;
|
||||
LoadInterstitial();
|
||||
AdsActionEvents.TrackAdFailToShow(Platfrom,AdsType.Interstitial,errorInfo.Message,"");
|
||||
|
@ -242,7 +242,7 @@ namespace WZ
|
|||
{
|
||||
LoggerUtils.Debug($"[Max] OnInterstitialHiddenEvent");
|
||||
AdsActionEvents.TrackAdClosed(Platfrom,adInfo.NetworkName,adInfo.AdUnitIdentifier,AdsType.Interstitial,"",adInfo.Revenue);
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(adInfo.Revenue);
|
||||
_ivCloseCallback = null;
|
||||
LoadInterstitial();
|
||||
}
|
||||
|
|
|
@ -19,8 +19,8 @@ namespace WZ
|
|||
public string _topon_rewarded_units;
|
||||
private string _rvPos;
|
||||
private string _ivPos;
|
||||
private Action<bool> _rvCloseCallback = null;
|
||||
private Action _ivCloseCallback = null;
|
||||
private Action<bool,double> _rvCloseCallback = null;
|
||||
private Action<double> _ivCloseCallback = null;
|
||||
private Action _rvShowFailedCallback = null;
|
||||
|
||||
public void Initialize()
|
||||
|
@ -60,7 +60,7 @@ namespace WZ
|
|||
|
||||
}
|
||||
public void LoadRewarded() { }
|
||||
public void DisplayRewarded(string adPos, Action<bool> rewardCallback = null, Action showFailedCallback = null)
|
||||
public void DisplayRewarded(string adPos, Action<bool,double> rewardCallback = null, Action showFailedCallback = null)
|
||||
{
|
||||
_rvPos = adPos;
|
||||
_rvCloseCallback = rewardCallback;
|
||||
|
@ -94,7 +94,7 @@ namespace WZ
|
|||
public void LoadInterstitial() { }
|
||||
public double GetInterstitialRevenue() { return 0; }
|
||||
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action closeCallback = null)
|
||||
public void DisplayInterstitial(string ivPos, IvType _IvType = IvType.IV1, Action<double> closeCallback = null)
|
||||
{
|
||||
_ivPos = ivPos;
|
||||
_ivCloseCallback = closeCallback;
|
||||
|
@ -176,7 +176,7 @@ namespace WZ
|
|||
}
|
||||
else if (erg.placementId.Equals(_topon_interstitial_units))
|
||||
{
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(0);
|
||||
_ivCloseCallback = null;
|
||||
}
|
||||
}, "");
|
||||
|
@ -198,12 +198,12 @@ namespace WZ
|
|||
{
|
||||
if (erg.placementId.Equals(_topon_rewarded_units))
|
||||
{
|
||||
_rvCloseCallback?.Invoke(true);
|
||||
_rvCloseCallback?.Invoke(true,erg.callbackInfo.publisher_revenue);
|
||||
_rvCloseCallback = null;
|
||||
}
|
||||
else if (erg.placementId.Equals(_topon_interstitial_units))
|
||||
{
|
||||
_ivCloseCallback?.Invoke();
|
||||
_ivCloseCallback?.Invoke(erg.callbackInfo.publisher_revenue);
|
||||
_ivCloseCallback = null;
|
||||
}
|
||||
}, "");
|
||||
|
|
|
@ -46,13 +46,21 @@ public class AppSDKManager : D_MonoSingleton<AppSDKManager>
|
|||
bool isInterstitialReady = AdsSDKManager.Instance.IsInterstitialReady();
|
||||
if (isInterstitialReady)
|
||||
{
|
||||
AdsSDKManager.Instance.ShowInterstitialAd(position, ivadType, () =>
|
||||
AdsSDKManager.Instance.ShowInterstitialAd(position, ivadType, (revenue) =>
|
||||
{
|
||||
//展示完一个插屏之后调用
|
||||
IvRulesConst.CurrentOverLevel = 0;
|
||||
IvRulesConst.CurrentInterval = TimeUtils.GetLocalTimestamp();
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
callback?.Invoke(0);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
callback?.Invoke(0);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -107,16 +115,17 @@ public class AppSDKManager : D_MonoSingleton<AppSDKManager>
|
|||
|
||||
|
||||
|
||||
public void ShowRewardAd(string position, Action<double> callback = null)
|
||||
public void ShowRewardAd(string position, Action<bool,double> callback = null)
|
||||
{
|
||||
bool isRewardAdReady = AdsSDKManager.Instance.IsRewardAdReady();
|
||||
if (isRewardAdReady)
|
||||
{
|
||||
AdsSDKManager.Instance.ShowRewardAd(position, (isReward) =>
|
||||
AdsSDKManager.Instance.ShowRewardAd(position, (isReward, revenue) =>
|
||||
{
|
||||
if (isReward)
|
||||
{
|
||||
//callback?.Invoke();
|
||||
callback?.Invoke(true, revenue);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue