본문 바로가기
Unity

[ UNITY ] AdMob광고 달기 - 보상형 광고, 리워드 광고

by 까꿍봉봉 2022. 12. 18.
728x90
반응형

유니티에서 광고 스크립트를 작업하기 전 Plugins을 설치해야한다.

설치는 앞에 적어놓은 배너광고, 전면광고 글에 설정해 놓았다.

https://lllehzflll.com/entry/UNITY-AdMob%EA%B4%91%EA%B3%A0-%EB%8B%AC%EA%B8%B0-%EB%B0%B0%EB%84%88-%EA%B4%91%EA%B3%A0-%EC%82%AC%EC%9D%B4%EC%A6%88-%EC%A1%B0%EC%A0%88

 

[ UNITY ] AdMob광고 달기 - 배너 광고, 사이즈 조절

유니티에서 배너광고를 달기 전에 Plugins을 설치해야한다. https://github.com/googleads/googleads-mobile-unity/releases/tag/v7.3.1 Release Google Mobile Ads Unity Plugin v7.3.1 · googleads/googleads-mobile-unity Plugin : Fixed #1799 Rewa

lllehzflll.com

 

Hierachy에서 빈 오브젝트를 만들고 이름을  AdMobManager로 변경한다.

AdmobReward라는 Script를 만들어서 AdMobManager에 넣어준다.

Script에 아래 코드를 적어준다.

using GoogleMobileAds.Api;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class AdmobReward : MonoBehaviour
{
    private RewardedAd rewardedAd;


    public void Start()
    {
        RequestRewardedAd();
        RewardAdmobShow();
    }

    public void RewardAdmobShow()
    {
        if (rewardedAd.IsLoaded())
        {
            rewardedAd.Show();
        }
    }

    void RequestRewardedAd()
    {
        string adUnitId;
#if UNITY_ANDROID
            adUnitId = "ca-app-pub-3940256099942544/5224354917";
#elif UNITY_IPHONE
            adUnitId = "ca-app-pub-3940256099942544/1712485313";
#else
        adUnitId = "unexpected_platform";
#endif

        rewardedAd = new RewardedAd(adUnitId);

        // 광고 요청이 성공적으로 로드되면 호출됩니다.
        rewardedAd.OnAdLoaded += HandleRewardedAdLoaded;
        // 광고 요청을 로드하지 못한 경우 호출됩니다.
        rewardedAd.OnAdFailedToLoad += HandleRewardedAdFailedToLoad;
        // 광고가 표시되면 호출됩니다.
        rewardedAd.OnAdOpening += HandleRewardedAdOpening;
        // 광고 요청이 표시되지 않을 때 호출됩니다.
        rewardedAd.OnAdFailedToShow += HandleRewardedAdFailedToShow;
        // 사용자가 광고와 상호 작용하여 보상을 받아야 할 때 호출됩니다.
        rewardedAd.OnUserEarnedReward += HandleUserEarnedReward;
        // 광고가 닫히면 호출됩니다.
        rewardedAd.OnAdClosed += HandleRewardedAdClosed;

        // 빈 광고 요청을 만듭니다.
        AdRequest request = new AdRequest.Builder().Build();
        // 보상된 광고를 요청과 함께 로드합니다.
        rewardedAd.LoadAd(request);
    }

    public void HandleRewardedAdLoaded(object sender, EventArgs args)
    {
        Debug.Log("HandleRewardedAdLoaded event received");
    }

    public void HandleRewardedAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
    {
        Debug.Log("HandleRewardedAdFailedToLoad event received with message: "
                             + args.ToString());
    }

    public void HandleRewardedAdOpening(object sender, EventArgs args)
    {
        Debug.Log("HandleRewardedAdOpening event received");
    }

    public void HandleRewardedAdFailedToShow(object sender, AdErrorEventArgs args)
    {
        Debug.Log("HandleRewardedAdFailedToShow event received with message: "
                             + args.Message);
    }

    public void HandleRewardedAdClosed(object sender, EventArgs args)
    {
        Debug.Log("HandleRewardedAdClosed event received");
    }

    public void HandleUserEarnedReward(object sender, Reward args)
    {
        string type = args.Type;
        double amount = args.Amount;
        Debug.Log("HandleRewardedAdRewarded event received for "
                        + amount.ToString() + " " + type);
    }
}

이렇게 해서 플레이 해보면 보상형 광고가 나오는걸 확인할 수 있다.

 

 

참고 사이트

https://developers.google.com/admob/unity/rewarded

 

보상형 광고  |  Unity  |  Google Developers

이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 보상형 광고 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 보상형 광고는 상호작용하

developers.google.com

 

728x90
반응형

댓글