본문 바로가기
[Unity]

[Unity] 구글 애드몹 보상형 광고 구현

by 김기승 2023. 1. 17.

1) 구글 애드몹 페이지에서 새 앱 설정

 

2) '광고 형식 선택'에서 리워드 선택

 

3) 광고 단위 설정 구성

- 게제빈도를 설정하지 않으면 어뷰징으로 의심받을 수도 있다고 한다.

 

4) https://github.com/googleads/googleads-mobile-unity/releases 에서 .unitypackage 파일 내려받기

 

 

5) 이런 창이 뜨면 Enable 클릭하기

 

6) Resolving Android Dependencies 실행

- Assets/External Dependency Manager/Android Resolver/Force Resolve로 실행할 수 있다.

- 에러가 발생한다면 Keystore를 지정 후 재시도하면 된다.

 

7)  Assets/Google Mobile Ads/Settings 탭에서 앱 ID 입력

- 구글 애드몹  페이지의 앱 설정에서 앱 ID를 확인할 수 있다.

- 프로젝트를 열 때마다 초기화되므로 빌드 시 입력해줘야한다.

 

8) 보상형 광고 실행을 위한 스크립트 작성

using UnityEngine;
using System;
using GoogleMobileAds.Api;

public class GoogleRewardADManager : MonoBehaviour
{
    [Header("Variable")]
    public RewardedAd rewardedAD; //보상형 광고 관리 변수
    public Action onUserEarnedRewardAction; //보상형 광고 실행 후 실행되는 함수

    [Header("Cache")]
    private readonly bool enableTestAD; //테스트 광고 활성화 여부
    private readonly string rewardADID = "ca-app-pub-~~~~~~~~~~~~~~~~~~~~"; //보상형 광고 ID
    private readonly string rewardTestADID = "ca-app-pub-3940256099942544/5224354917"; //보상형 테스트 광고 ID

    private void Start()
    {
        RequestConfiguration requestConfiguration = new RequestConfiguration.Builder().build();
        MobileAds.SetRequestConfiguration(requestConfiguration);

        LoadRewardAD(); //보상형 광고 불러오기
    }

    /* 보상형 광고를 불러오는 함수 */
    public void LoadRewardAD()
    {
        rewardedAD = new RewardedAd(enableTestAD ? rewardTestADID : rewardADID); //'보상형 광고' 또는 '보상형 테스트 광고'
        rewardedAD.LoadAd(GetADRequest());
        rewardedAD.OnUserEarnedReward += (obj, reward) =>
        {
            onUserEarnedRewardAction();
        }; //보상형 광고 실행 후 실행되는 함수 지정
    }

    /* 보상형 광고를 실행하는 함수 */
    public void ShowRewardAD()
    {
        if (rewardedAD.IsLoaded()) //광고를 불러왔다면
        {
            rewardedAD.Show();
            LoadRewardAD(); //광고를 보여주는 동시에 보상형 광고 불러오기
        }
    }

    /* 광고 요청을 가져오는 함수 */
    private AdRequest GetADRequest()
    {
        return new AdRequest.Builder().Build();
    }
}

 


 

👉🏻 구글 애드몹 페이지에서 테스트 기기를 추가하여 테스트 광고를 추가하는 방법도 있다.

댓글