如何在unity3d中每隔...秒显示一次广告?

时间:2018-12-04 14:22:04

标签: unity3d

我最近开始使用unity3d,所以我并不了解它。 如何每隔...秒统一显示ADS?
我想每300/500秒显示一次广告有什么帮助吗? (请注意,我没有任何代码)

          using UnityEngine;
        using UnityEngine.Advertisements;

        public class UnityAdsExample : MonoBehaviour
        {
          public void ShowRewardedAd()
          {
            if (Advertisement.IsReady("rewardedVideo"))
            {
              var options = new ShowOptions { resultCallback = HandleShowResult };
              Advertisement.Show("rewardedVideo", options);
            }
          }

          private void HandleShowResult(ShowResult result)
          {
            switch (result)
            {
              case ShowResult.Finished:
                Debug.Log("The ad was successfully shown.");
                //
                // YOUR CODE TO REWARD THE GAMER
                // Give coins etc.
                break;
              case ShowResult.Skipped:
                Debug.Log("The ad was skipped before reaching the end.");
                break;
              case ShowResult.Failed:
                Debug.LogError("The ad failed to be shown.");
                break;
            }
          }
        }

Thnx:)

2 个答案:

答案 0 :(得分:1)

首先,您必须确定要使用的广告源(Admob,UnityAds等)。您不必实施适当的广告加载机制,但可能会更改为您决定使用的广告源(在Admob中,您必须导入Admob的统一库)。

如果您想每隔x​​秒钟执行一次操作,则可以使用以下链接中所述的协程:

https://docs.unity3d.com/ScriptReference/MonoBehaviour.StartCoroutine.html

但是,首先让我难过的是,您必须学习如何从广告资源中获取广告。

答案 1 :(得分:0)

我解决了问题,抱歉。

我使用的代码:

 using UnityEngine;
 using System.Collections;
 using UnityEngine.Advertisements;

public class Ad : MonoBehaviour
{
float timer;
void Start()
{
    Advertisement.Initialize("OWN GAME CODE(UNITY)"); //Remember to edit
}

void Update()
{
    timer -= Time.deltaTime;
    ShowAd();
}

public void ShowAd()
{
    if (Advertisement.IsReady() && timer <= 0)
    {
        Advertisement.Show();
        timer = 300.0f; //Amount of seconds // remember to set it to 300.0f
    }
}}