반응형
Unity에서 Google AdMob을 사용하면 Unity 게임에서 광고를 게재할 수 있습니다. Google AdMob은 Google에서 제공하는 광고 플랫폼으로, 다양한 종류의 광고를 제공합니다.
Unity에서 Google AdMob을 사용하려면 다음과 같은 단계를 따르세요.
- Google AdMob 계정 생성
- Unity 프로젝트에 AdMob 패키지 설치
- AdMob 광고 단위 생성
- Unity 프로젝트에 AdMob 광고 추가
Google AdMob 홈페이지에서 계정을 생성합니다
AdMob Package Install
깃허브에서 최신 버전의 .unitypackage를 다운로드 받아 프로젝트에 추가하세요
https://github.com/googleads/googleads-mobile-unity/releases
AdMob 광고 단위 생성
- 먼저 앱이 없다면 앱 추가 버튼을 눌러 앱을 프로젝트에 맞게 만들어주세요.
- 광고 단위 페이지에서 광고 단위 추가를 클릭합니다.
- 원하는 광고를 선택 후 광고 단위를 생성하세요.
- 광고 단위 ID를 복사합니다.
AdMob 광고 테스트
실제 앱을 배포할 때가 아닌 테스트 할 때는 테스트 ID를 사용해야합니다.
아래 설명에서는 보상형 전면 광고로 설명하겠습니다.
Android Id : ca-app-pub-3940256099942544/5354046379
IOS id : ca-app-pub-3940256099942544/6978759866
using GoogleMobileAds.Api;
using UnityEngine;
public class AdManager : MonoBehaviour
{
public static T Instance { get; private set; }
RewardedAd rewardedAd;
private void Awake()
{
if (Instance is null)
{
Instance = (T)FindObjectOfType(typeof(T));
DontDestroyOnLoad(this.gameObject);
}
else if (Instance != null)
{
Destroy(this.gameObject);
}
}
private void Start() => MobileAds.Initialize(initStatus => {});
public void ShowAds(string _adUnitId)
{
LoadRewardedAd(_adUnitId);
ShowRewardedAd();
}
void LoadRewardedAd(string _adUnitId)
{
if (rewardedAd != null)
{
rewardedAd.Destroy();
rewardedAd = null;
}
AdRequest adRequest = new AdRequest.Builder().Build();
// send the request to load the ad.
RewardedAd.Load(_adUnitId, adRequest,
(RewardedAd ad, LoadAdError error) =>
{
if (error != null || ad == null)
{
Debug.LogError("Rewarded ad failed to load an ad with error : " + error);
return;
}
rewardedAd = ad;
});
}
void ShowRewardedAd()
{
if (rewardedAd is null && !rewardedAd.CanShowAd())
return;
rewardedAd.Show((Reward reward) => GiveReward(reward));
}
void GiveReward(Reward reward)
{
Debug.Log(string.Format(reward.Type, reward.Amount));
}
}
버튼 클릭시 AdManager.Instance.ShowAds("ca-app-pub-3940256099942544/5354046379") 액션을 추가하면
테스트용 보상형 전면 광고가 나타납니다.
'Unity' 카테고리의 다른 글
C# 프로젝트 파일이 열리지 않을 때 (VSCode) (0) | 2023.11.21 |
---|---|
헷갈리는 오브젝트 회전 방법 Part 1 (LookRotation, LookAt, RotateTowards) (0) | 2023.11.20 |
Unity의 WaitUntil 코루틴 (0) | 2023.10.25 |
Unity에서 유연한 인스턴스 생성 (0) | 2023.10.16 |
디바이스 고유 ID : SystemInfo.deviceUniqueIdentifier (0) | 2023.10.14 |