unity:显示插屏
/// <summary>
/// 显示插屏
/// 如果不需要点击回调,直接传 null 即可
/// </summary>
/// <param name="interstitialAdByCallBack">点击插屏的回调</param>
public void CAll_ShowInterstitialAd(AndroidSDKGameEvent<bool> interstitialAdByCallBack)
{
try{
if (interstitialAdByCallBack != null)
{
onAdByCallBack = interstitialAdByCallBack;
}
#if UNITY_EDITOR
Debug.Log("CAll_ShowInterstitialAdByCallBack");
OnInterstitialAdClick("1");
return;
#endif
#if UNITY_ANDROID
if (INTERSTITIAL.Equals("1"))
{
{
AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
if (interstitialAdByCallBack == null)
{
jo.Call("ShowInterstitialAd", "0");
}
else
{
onAdByCallBack = interstitialAdByCallBack;
jo.Call("ShowInterstitialAd", "1");
}
}
}
else
{
if (interstitialAdByCallBack != null)
{
OnInterstitialAdClick("0");
}
}
#endif
}
catch(Exception e)
{
Debug.LogError(e);
}
}
不需要点击回调: CAll_ShowInterstitialAd(null);
需要点击回调: CAll_ShowInterstitialAdByCallBack(ClickAdSucc);
private void ClickAdSucc(bool succ)
{
if (succ)
{
GameSave.Instance.DiamondCount += 20;
}
else
{
AndroidSDK.Instance.ShowToast("请稍后再试!");
}
}
unity:点击插屏广告回调
/// <summary>
/// 点击插屏广告回调
/// </summary>
public AndroidSDKGameEvent<bool> onAdByCallBack;
public void OnInterstitialAdClick(string click)
{
Time.timeScale = 1;
if (onAdByCallBack != null)
{
if ("1".Equals(click))
{
onAdByCallBack(true);
}
else
{
onAdByCallBack(false);
}
onAdByCallBack = null;
}
}