Hi
I am new to unity ads and I am having trouble figuring out how to play ads from another script using the functions from the ad manager. I would like to play a rewarded video ad and know if the player finished it. I have already made an ad manager if that helps.
Here it is:
using UnityEngine;
using UnityEngine.Advertisements;
public class AdManager : MonoBehaviour, IUnityAdsListener
{
private string playstoreID = "3934491";
private string appStoreID = "3934490";
private string interstitialAd = "video";
private string rewardedVideoAd = "rewardedVideo";
public bool isTargetPlayStore;
public bool isTestAd;
private void Start() {
initializeAdvertisement();
Advertisement.AddListener(this);
}
private void initializeAdvertisement() {
if(isTargetPlayStore) { Advertisement.Initialize(playstoreID, isTestAd); return; }
Advertisement.Initialize(appStoreID, isTestAd);
}
public void playInterstitialAd() {
if(!Advertisement.IsReady(interstitialAd)){ return; }
Advertisement.Show(interstitialAd);
}
public void playRewardedVideoAd() {
if(!Advertisement.IsReady(rewardedVideoAd)) { return; }
Advertisement.Show(rewardedVideoAd);
}
public void OnUnityAdsReady(string placementId)
{
// throw new System.NotImplementedException();
}
public void OnUnityAdsDidError(string message)
{
// throw new System.NotImplementedException();
}
public void OnUnityAdsDidStart(string placementId)
{
// throw new System.NotImplementedException();
}
public void OnUnityAdsDidFinish(string placementId, ShowResult showResult)
{
switch (showResult) {
case ShowResult.Failed:
break;
case ShowResult.Skipped:
break;
case ShowResult.Finished:
if(placementId == rewardedVideoAd) { Debug.Log("Reward player pls"); }
if(placementId == interstitialAd) { Debug.Log("Finished interstitial"); }
break;
}
}
}
↧