Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何通过单击按钮移动到Unity中的下一个场景来显示间隙admob?_C#_Android_Unity3d_Admob_Ads - Fatal编程技术网

C# 如何通过单击按钮移动到Unity中的下一个场景来显示间隙admob?

C# 如何通过单击按钮移动到Unity中的下一个场景来显示间隙admob?,c#,android,unity3d,admob,ads,C#,Android,Unity3d,Admob,Ads,如何通过单击按钮进入下一个场景来显示插入式广告admob, 我已经在尝试一些你会在下面看到的东西 你能帮我吗 *第一种方法,我创建一个游戏对象,并在其中添加脚本Admanager,然后将游戏对象与用于进入下一场景的按钮连接, -注意按钮下一个场景已经在点击gameobject Admanger with RequestInterstitual和ShowInterstitual *第二种方法也是直接在我添加的脚本中,在方法移动到下一个场景ShowInterstitial和gamemanager脚本

如何通过单击按钮进入下一个场景来显示插入式广告admob, 我已经在尝试一些你会在下面看到的东西

你能帮我吗

*第一种方法,我创建一个游戏对象,并在其中添加脚本Admanager,然后将游戏对象与用于进入下一场景的按钮连接, -注意按钮下一个场景已经在点击gameobject Admanger with RequestInterstitual和ShowInterstitual

*第二种方法也是直接在我添加的脚本中,在方法移动到下一个场景ShowInterstitial和gamemanager脚本中,使用void start RequestInterstitial, -请注意我的更改请求。。。由ShowInter。。。而且还是不起作用

脚本游戏管理器

private void Start()
    {
        //Show Banner
        AdManager.Instance.RequestBanner();
        //Interstitial Preparing
        AdManager.Instance.Invoke("RequestInterstitial", 0.5f);
        //Interstitial Preparing

    }
//Note: i'm trying with void update too
脚本按钮管理器

public void Level2btn()
    {
        //Interstitial Showing
        AdManager.Instance.Invoke("ShowIinterstitial", 0.5f);
        //Interstitial Showing
        SceneManager.LoadScene(2);
        Time.timeScale = 1f;
    }
顺便说一下,这是AdManager的脚本:

using UnityEngine;
using GoogleMobileAds;
using GoogleMobileAds.Api;
using System;

public class AdManager : MonoBehaviour
{

       public static AdManager Instance { get; set; }

    public bool interstitialLoaded = false;
    public bool interstitialClosed = false;

    const string interstitialAdId = "ca-app-pub-3940256099942544/1033173712";
    const string bannerADid = "ca-app-pub-3940256099942544/6300978111";

    InterstitialAd interstitialAd;
    AdRequest request;
    private BannerView bannerview;

    private void Awake()
    {
        if(Instance == null)
        {
            Instance = this;
        }
        else
        {
            Destroy(gameObject);
        }
        DontDestroyOnLoad(gameObject);
        interstitialAd = new InterstitialAd(interstitialAdId);
        Showbanner();

        request = new AdRequest.Builder().Build();
        interstitialAd.LoadAd(request);
    }
    public void RequestBanner()
    {
        bannerview = new BannerView(bannerADid, AdSize.Banner, AdPosition.TopRight);
        AdRequest request = new AdRequest.Builder().Build();

        bannerview.LoadAd(request);
        bannerview.Show();
    }
    public void Showbanner()
    {
        if(bannerview ==  null)
        {
            RequestBanner();
        }
    }
    public void InvokeLoadAd()
    {
        Invoke("ShowIintertitial", 2.0f);
    }
    public void InvokeAd()
    {
        Invoke("ShowIintertitial", 2.0f);
    }

    public void RequestInterstitial()
    {
        request = new AdRequest.Builder().Build();
        interstitialAd.LoadAd(request);
    }
    public void ShowIintertitial()
    {

        if(interstitialAd.IsLoaded())
        {
            interstitialLoaded = true;
            interstitialAd.Show();

        }
        interstitialAd.OnAdClosed += InterstitialAd_onAdClosed;
    }

    private void InterstitialAd_onAdClosed(object sender, EventArgs e)
    {
        throw new NotImplementedException();
    }
}

可能需要查看更多的代码来了解正在进行的一切,但有几件事您可以检查

1) 是否在单击inspector中的按钮时调用方法
Level2btn()

2) 此外,可能需要再次检查您的拼写(ShowiInterstital有一个额外的I),以确保它与您尝试调用的方法匹配:


AdManager.Instance.Invoke(“showiinterstital”,0.5f)

是的,我知道,问题是同一场景中的所有广告都能正常工作,就在我尝试在移动到另一个场景的过程中显示间隙广告或视频奖励时,广告不会出现