Search
 
SCRIPT & CODE EXAMPLE
 

CSHARP

Unity banner ad C#

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Advertisements;

public class BannerAdExample : MonoBehaviour
{
    // For the purpose of this example, these buttons are for functionality testing:
    [SerializeField] Button _loadBannerButton;
    [SerializeField] Button _showBannerButton;
    [SerializeField] Button _hideBannerButton;

    [SerializeField] BannerPosition _bannerPosition = BannerPosition.BOTTOM_CENTER;

    [SerializeField] string _androidAdUnitId = "Banner_Android";
    [SerializeField] string _iOsAdUnitId = "Banner_iOS";
    string _adUnitId;

    void Start()
    {
        // Disable the button until an ad is ready to show:
        _showBannerButton.interactable = false;
        _hideBannerButton.interactable = false;

        // Set the banner position:
        Advertisement.Banner.SetPosition(_bannerPosition);

        // Configure the Load Banner button to call the LoadBanner() method when clicked:
        _loadBannerButton.onClick.AddListener(LoadBanner);
        _loadBannerButton.interactable = true;
    }

    // Implement a method to call when the Load Banner button is clicked:
    public void LoadBanner()
    {
        // Set up options to notify the SDK of load events:
        BannerLoadOptions options = new BannerLoadOptions
        {
            loadCallback = OnBannerLoaded,
            errorCallback = OnBannerError
        };

        // Load the Ad Unit with banner content:
        Advertisement.Banner.Load(_adUnitId, options);
    }

    // Implement code to execute when the loadCallback event triggers:
    void OnBannerLoaded()
    {
        Debug.Log("Banner loaded");

        // Configure the Show Banner button to call the ShowBannerAd() method when clicked:
        _showBannerButton.onClick.AddListener(ShowBannerAd);
        // Configure the Hide Banner button to call the HideBannerAd() method when clicked:
        _hideBannerButton.onClick.AddListener(HideBannerAd);

        // Enable both buttons:
        _showBannerButton.interactable = true;
        _hideBannerButton.interactable = true;      
    }

    // Implement code to execute when the load errorCallback event triggers:
    void OnBannerError(string message)
    {
        Debug.Log($"Banner Error: {message}");
        // Optionally execute additional code, such as attempting to load another ad.
    }

    // Implement a method to call when the Show Banner button is clicked:
    void ShowBannerAd()
    {
        // Set up options to notify the SDK of show events:
        BannerOptions options = new BannerOptions
        {
            clickCallback = OnBannerClicked,
            hideCallback = OnBannerHidden,
            showCallback = OnBannerShown
        };

        // Show the loaded Banner Ad Unit:
        Advertisement.Banner.Show(_adUnitId, options);
    }

    // Implement a method to call when the Hide Banner button is clicked:
    void HideBannerAd()
    {
        // Hide the banner:
        Advertisement.Banner.Hide();
    }

    void OnBannerClicked() { }
    void OnBannerShown() { }
    void OnBannerHidden() { }

    void OnDestroy()
    {
        // Clean up the listeners:
        _loadBannerButton.onClick.RemoveAllListeners();
        _showBannerButton.onClick.RemoveAllListeners();
        _hideBannerButton.onClick.RemoveAllListeners();
    }
}
Comment

PREVIOUS NEXT
Code Example
Csharp :: nullable 
Csharp :: c# prototype function 
Csharp :: check if app have administrator rights c# 
Csharp :: Web API - Stream large file to client 
Csharp :: open aspx page c# 
Csharp :: unity remove all child 
Csharp :: how to set an expiry date on a program 
Csharp :: asp.net web hooks 
Csharp :: nunjucks if variable exists 
Csharp :: how to make header in unity public variables 
Csharp :: leantween unity when timescale 0 
Csharp :: select vs where linq 
Csharp :: change character velocity unity 
Csharp :: parse persian date string to datetime c# 
Csharp :: ef core identity get user with relationships 
Csharp :: dapper query list of parameters 
Csharp :: c# change chart legend font size 
Csharp :: asp.net unregister client script 
Csharp :: sort number in dynamo 
Csharp :: c# check if there is 5 mins space between two datestime 
Csharp :: set data annotation in model c# 
Csharp :: An error occurred while deserializing the property of class Truncation resulted in data loss. 
Csharp :: how to trigger event when a com device is connected in c# 
Csharp :: Compiling C# Example 
Csharp :: cache.TryGetValue in MemoryCache c# .net 
Csharp :: c# wait without GUI blocks 
Csharp :: button Previous for picturebox c# 
Csharp :: get position of gameobject unity 
Csharp :: c# loop array back 
Csharp :: unity trigger not detecting collision 
ADD CONTENT
Topic
Content
Source link
Name
1+4 =