请输入
菜单

插屏广告

💡Tips

  • 🚀 采用预加载机制提升用户体验
  • 🔧 推荐使用标准化回调处理流程

1. 加载广告

csharp 复制代码
public void InitializeInterstitialAd() 
{
    McSdkCallbacks.Interstitial.OnAdLoadedEvent += OnInterstitialAdLoadedEvent;
    McSdkCallbacks.Interstitial.OnAdLoadFailedEvent += OnInterstitialAdLoadFailedEvent;
    McSdkCallbacks.Interstitial.OnAdDisplayFailedEvent += OnInterstitialAdDisplayFailedEvent;
    McSdkCallbacks.Interstitial.OnAdHiddenEvent += OnInterstitialAdHiddenEvent;
    McSdkCallbacks.Interstitial.OnAdRevenuePaidEvent += OnInterstitialAdRevenuePaidEvent;
    McSdkCallbacks.Interstitial.OnAdClickedEvent += OnInterstitialAdClickedEvent;
    McSdkCallbacks.Interstitial.OnAdDisplayedEvent += OnInterstitialAdDisplayedEvent;
    
    LoadInterstitialAd();
}

private void LoadInterstitialAd() 
{
    McSdk.LoadInterstitial("your mediation unit id");
}

private void OnInterstitialAdLoadedEvent(string adUnitId, McSdkBase.AdInfo adInfo)
{
    // 插屏加载成功回调
    // 重置加载次数
    retryAttempt = 0;
}

private void OnInterstitialAdLoadFailedEvent(string adUnitId, McSdkBase.ErrorInfo errorInfo)
{
    // 插屏加载失败回调
    // 我们建议您按照指数递增的方式延长重试间隔,直到达到最大延迟时间(本例为 8 秒)或最大重试次数(本例为 3 次)
    if (retryAttempt >= 3) return;
    retryAttempt++;
    double retryDelay = Math.Pow(2, Math.Min(3, retryAttempt));
    Invoke("LoadInterstitialAd", (float)retryDelay);
}

private void OnInterstitialAdDisplayFailedEvent(string adUnitId, McSdkBase.ErrorInfo errorInfo, McSdkBase.AdInfo adInfo)
{
    // 插屏展示失败回调
    // 预加载
    LoadInterstitialAd();
 }

private void OnInterstitialAdHiddenEvent(string adUnitId, McSdkBase.AdInfo adInfo)
{
    // 插屏广告关闭回调
    // 预加载
    LoadInterstitialAd();
}

private void OnInterstitialAdRevenuePaidEvent(string adUnitId, McSdkBase.AdInfo adInfo)
{
    //广告收益回调
}   

private void OnInterstitialAdClickedEvent(string adUnitId, McSdkBase.AdInfo adInfo)
{
    //广告点击回调
}

private void OnInterstitialAdDisplayedEvent(string adUnitId, McSdkBase.AdInfo adInfo)
{
    //广告展示成功回调
    // 预加载
    LoadInterstitialAd();
}

2. 展示广告

csharp 复制代码
if (McSdk.IsInterstitialReady("your mediation unit id")) 
{
    McSdk.ShowInterstitial("your mediation unit id");
} else {
    LoadInterstitialAd();
}

3. 设置自定义参数

csharp 复制代码
McSdk.SetInterstitialExtraParameter("your mediation unit id", "inter_test_extra_key", "inter_test_extra_value");
#if UNITY_ANDROID
    McSdk.SetInterstitialLocalExtraParameter("your mediation unit id", "inter_test_local_extra_key", new AndroidJavaObject("java.lang.String", "inter_test_local_extra_value"));
#elif UNITY_IOS
    McSdk.SetInterstitialLocalExtraParameter("your mediation unit id", "inter_test_local_extra_key", "inter_test_local_extra_value");
#endif

McSdk.LoadInterstitial("your mediation unit id");

上一个
激励视频广告
下一个
横幅广告
最近修改: 2025-07-29Powered by