我最近开始使用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:)
答案 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
}
}}