Unity 광고와 미디에이션 통합

이 가이드에서는 Google 모바일 광고 SDK를 사용하여 Unity 광고에서 미디에이션을 통해 광고를 로드하고 표시하는 방법을 보여주며, 폭포식 구조 통합에 대해 다룹니다. 광고 단위의 미디에이션 구성에 Unity 광고를 추가하는 방법과 Unity 광고 SDK 및 어댑터를 Unity 앱에 통합하는 방법을 다룹니다.

지원되는 통합 및 광고 형식

Unity Ads용 AdMob 미디에이션 어댑터에는 다음과 같은 기능이 있습니다.

통합
입찰
폭포
형식
배너
전면 광고
리워드 제공됨

요구사항

  • 최신 Google 모바일 광고 SDK
  • Unity 4 이상
  • Android에 배포하려면 다음 단계를 따르세요.
    • Android API 수준 21 이상
  • iOS에 배포하는 방법
    • iOS 배포 대상 12.0 이상
  • Google 모바일 광고 SDK로 구성된 Unity 작업 중인 프로젝트. 자세한 내용은 시작하기를 참고하세요.
  • 미디에이션 시작 가이드를 완료합니다.

1단계: Unity Ads UI에서 구성 설정

Unity Ads에 가입하거나 로그인합니다.

프로젝트 만들기

Unity Ads 대시보드에서 프로젝트로 이동하고 프로젝트 만들기를 클릭합니다.

양식을 작성하고 프로젝트 만들기를 클릭하여 프로젝트를 추가합니다.

수익 창출 > 시작하기로 이동한 다음 시작하기를 클릭합니다.

프로젝트 설정 모달에서 미디에이션 파트너에 대해 미디에이션을 사용할 계획입니다Google AdMob을 선택한 후 다음을 클릭합니다.

광고 설정을 선택하고 다음을 클릭합니다.

양식을 작성한 다음 프로젝트 추가를 클릭합니다.

게임 ID를 기록해 둡니다.

광고 단위 만들기

수익 창출 > 광고 단위로 이동한 다음 광고 단위 추가를 클릭합니다.

광고 단위 이름을 입력한 다음 플랫폼광고 형식을 선택합니다.

Android

iOS

마지막으로 만들기를 클릭하여 광고 단위를 저장합니다.

게재위치 추가

프로젝트가 만들어지면 수익 창출 > 게재위치로 이동합니다. 새 게재위치를 만들려면 광고 단위에서 게재위치 추가를 클릭합니다.

필요한 세부정보를 입력하고 게재위치 추가를 클릭합니다.

게재위치 ID를 기록해 둡니다.

Android

iOS

사용자 인증 정보 가져오기

AdMob 광고 단위 ID를 설정하려면 게임 ID게재위치 ID 외에 Unity Ads API 키조직 핵심 ID도 필요합니다.

수익 창출 > 설정 > API 관리로 이동하여 수익 창출 통계 API 액세스 키를 기록합니다.

그런 다음 수익 창출 > 조직 설정으로 이동하여 조직 핵심 ID를 메모합니다.

테스트 모드 사용 설정

테스트 모드는 Unity Ads 대시보드에서 사용 설정할 수 있습니다. 프로젝트 설정에서 테스트 탭을 선택합니다.

각 플랫폼의 수정 버튼을 클릭하고 클라이언트 테스트 모드 재정의를 선택한 후 모든 기기에 대해 테스트 모드 강제 사용 (즉, 테스트 광고 사용)을 선택하여 앱의 강제 테스트 모드를 실행할 수 있습니다.

Android

iOS

또는 Add Test Device 버튼을 클릭하여 특정 기기에 테스트 모드를 사용 설정할 수 있습니다.

양식을 작성하고 저장을 클릭합니다.

2단계: UI에서 Unity 광고 수요 AdMob 설정

광고 단위에 대한 미디에이션 설정 구성

Android

자세한 내용은 Android 가이드의 2단계를 참고하세요.

iOS

자세한 내용은 iOS 가이드의 2단계를 참고하세요.

GDPR 및 미국 주 규정 광고 파트너 목록에 Unity Ads 추가

GDPR 설정미국 주 규정 설정 Unity Ads 를 AdMob UI의 GDPR 및 미국 주 규정 광고 파트너 목록에 추가합니다.

3단계: Unity Ads SDK 및 어댑터 가져오기

변경 로그의 다운로드 링크에서 Unity Ads용 Google 모바일 광고 미디에이션 플러그인의 최신 버전을 다운로드하고 zip 파일에서 GoogleMobileAdsUnityAdsMediation.unitypackage를 추출합니다.

Unity 프로젝트 편집기에서 Assets(애셋) > Import Package(패키지 가져오기) > Custom Package(맞춤 패키지)를 선택하고 다운로드한 GoogleMobileAdsUnityAdsMediation.unitypackage 파일을 선택합니다. 모든 파일을 선택하고 Import를 클릭합니다.

그런 다음 Assets(애셋) > Play Services Resolver(Play 서비스 리졸버) > Android Resolver(Android 리졸버) > Force Resolve(강제 해결)를 선택합니다. Unity Play 서비스 리졸버 라이브러리는 처음부터 종속 항목 해결을 실행하고 선언된 종속 항목을 Unity 앱의 Assets/Plugins/Android 디렉터리에 복사합니다.

Unity 광고 서비스와 함께 Unity 어댑터 사용

서비스 창, Package Manager 또는 Asset Store를 통해 Unity Ads SDK와 통합하는 경우 앱에 이미 Unity Ads Android SDK 사본이 있습니다. Android용으로 빌드할 때 기호 중복 문제를 방지하려면 Unity Ads SDK에 대한 참조를 삭제해야 합니다.

Assets/GoogleMobileAds/Editor/UnityMediationDependencies.xml 파일을 업데이트하고 Unity Ads SDK 종속 항목을 삭제합니다.

<!-- If using the Unity Ads Service from Unity3D, comment out this dependency to
avoid including the Unity Ads Android SDK twice. -->
<androidPackage spec="com.unity3d.ads:unity-ads:x.y.z">
  <repositories>
    <repository>https://repo.maven.apache.org/maven2/</repository>
  </repositories>
</androidPackage>

4단계: Unity Ads SDK에서 개인 정보 보호 설정 구현

Google EU 사용자 동의 정책에 따라 기기 식별자 및 개인 정보의 사용과 관련하여 유럽 경제 지역 (EEA)의 사용자에게 특정 정보를 공개하고 사용자의 동의를 얻어야 합니다. 이 정책에는 EU 온라인 개인 정보 보호 지침 및 개인 정보 보호법 (GDPR)의 요구사항이 반영되어 있습니다. 동의를 요청할 때 미디에이션 체인에서 개인 정보를 수집, 수신 또는 사용할 수 있는 각 광고 네트워크를 식별하고 각 네트워크의 사용에 관한 정보를 제공해야 합니다. 현재 Google은 이러한 네트워크에 사용자의 동의 선택을 자동으로 전달할 수 없습니다.

Unity Ads용 Google 모바일 광고 미디에이션 플러그인 버전 3.3.0 에는 UnityAds.SetConsentMetaData() 메서드가 포함되어 있습니다. 다음 샘플 코드는 Unity Ads SDK에 동의 정보를 전달하는 방법을 보여줍니다. 이 메서드를 호출하려면 Google 모바일 광고 SDK를 통해 광고를 요청하기 전에 호출하는 것이 좋습니다.

using GoogleMobileAds.Api.Mediation.UnityAds;
// ...

UnityAds.SetConsentMetaData("gdpr.consent", true);
UnityAds.SetConsentMetaData()

자세한 내용과 각 메서드에서 제공할 수 있는 값은 Unity Ads의 개인 정보 보호 동의 및 데이터 APIGDPR 준수 가이드를 참고하세요.

미국 주 개인 정보 보호법

미국 주 개인 정보 보호법 에 따라 사용자는 법률에 정의된 조항에 따라 '개인 정보'의 '판매'를 거부할 권리를 부여할 수 있으며, 거부 권리는 '판매'하는 회사의 홈페이지에 명시된 'Do Not Sell My Personal Information(내 개인 정보 판매 거부)' 링크를 통해 행사할 수 있습니다. 미국 주 개인 정보 보호법 규정 준수 가이드에서는 Google 광고 게재에 제한적인 데이터 처리를 사용 설정할 수 있는 기능을 제공하지만, Google에서 미디에이션 체인의 각 광고 네트워크에 이 설정을 적용할 수는 없습니다. 따라서 미디에이션 체인에서 개인 정보 판매에 참여할 수 있는 각 광고 네트워크를 식별하고 각 네트워크의 안내에 따라 규정을 준수해야 합니다.

Unity Ads용 Google 모바일 광고 미디에이션 플러그인 버전 3.3.0 에는 UnityAds.SetConsentMetaData() 메서드가 포함되어 있습니다. 다음 샘플 코드는 Unity Ads SDK에 동의 정보를 전달하는 방법을 보여줍니다. 이 메서드를 호출하려면 Google 모바일 광고 SDK를 통해 광고를 요청하기 전에 호출하는 것이 좋습니다.

using GoogleMobileAds.Api.Mediation.UnityAds;
// ...

UnityAds.SetConsentMetaData("privacy.consent", true);

각 메서드에서 제공할 수 있는 값과 자세한 내용은 Unity Ads의 개인 정보 보호 동의 및 데이터 APICCPA 준수 가이드를 참고하세요.

UnityAds.SetConsentMetaData()

5단계: 필수 코드 추가

Android

Unity Ads Android 통합에는 추가 코드가 필요하지 않습니다.

iOS

SKAdNetwork 통합

Unity 광고 문서에 따라 프로젝트의 Info.plist 파일에 SKAdNetwork 식별자를 추가하세요.

컴파일 오류

Unity Ads 어댑터 3.4.0 이상의 경우 Unity 문서의 통합 단계를 따라야 합니다.

6단계: 구현 테스트

테스트 광고 사용 설정

AdMob 용 테스트 기기를 등록하고 Unity Ads UI에서 테스트 모드를 사용 설정해야 합니다.

테스트 광고 확인

Unity Ads에서 테스트 광고를 수신하고 있는지 확인하려면 광고 검사기에서 Unity Ads (Waterfall) 광고 소스를 사용하여 단일 광고 소스 테스트를 사용 설정하세요.

오류 코드

어댑터가 Unity Ads에서 광고를 수신하지 못하면 게시자는 다음 클래스에서 ResponseInfo를 사용하여 광고 응답의 기본 오류를 확인할 수 있습니다.

Android

com.google.ads.mediation.unity.UnityAdapter
com.google.ads.mediation.unity.UnityMediationAdapter

iOS

GADMAdapterUnity
GADMediationAdapterUnity

다음은 광고 로드에 실패할 때 UnityAds 어댑터에서 발생하는 코드 및 메시지입니다.

Android

오류 코드 이유
0-10 UnityAds SDK에서 오류를 반환했습니다. 자세한 내용은 코드를 참고하세요.
101 AdMob UI에 구성된 UnityAds 서버 매개변수가 누락되거나 잘못되었습니다.
102 UnityAds에서 NO_FILL 상태의 게재위치를 반환했습니다.
103명 UnityAds에서 사용 중지된 상태의 게재위치를 반환했습니다.
104명 UnityAds에서 null 컨텍스트가 포함된 광고를 표시하려고 했습니다.
105 Unity Ads에서 광고를 초기화, 로드 또는 표시하는 데 사용되는 컨텍스트는 Activity 인스턴스가 아닙니다.
106 UnityAds에서 아직 게재할 준비가 되지 않은 광고를 표시하려고 했습니다.
107 UnityAds는 기기에서 지원되지 않습니다.
108 UnityAds는 게재위치당 한 번에 1개의 광고만 로드할 수 있습니다.
109 UnityAds가 오류 상태로 완료되었습니다.
200-204 UnityAds 배너에서 특정 오류가 발생합니다. 자세한 내용은 코드를 참고하세요.

iOS

0-9 UnityAds SDK에서 오류를 반환했습니다. 자세한 내용은 Unity 문서를 참조하세요.
101 AdMob UI에 구성된 UnityAds 서버 매개변수가 누락되거나 잘못되었습니다.
102 UnityAds에서 지원하지 않는 기기입니다.
103명 UnityAds에서 오류 상태 kUnityAdsFinishStateError와 함께 표시를 완료했습니다.
104명 Unity 광고 객체는 초기화 프로그램을 호출한 후 nil이 됩니다.
105 광고가 준비되지 않아 Unity Ads를 표시할 수 없습니다.
106 UnityAds에서 게재위치 상태가 kUnityAdsPlacementStateNoFill인 게재위치 변경 콜백을 호출했습니다.
107 UnityAds에서 게재위치 상태가 kUnityAdsPlacementStateDisabled인 게재위치 변경 콜백을 호출했습니다.
108 이 게재위치에 대해 광고가 이미 로드되었습니다. UnityAds SDK는 동일한 게재위치에 여러 광고를 로드하는 것을 지원하지 않습니다.

Unity Ads Unity 미디에이션 플러그인 변경 로그

버전 3.9.1

버전 3.9.0

버전 3.8.0

버전 3.7.1

버전 3.7.0

버전 3.6.1

버전 3.6.0

  • 어댑터 콘텐츠를 GoogleMobileAds/Mediation/UnityAds/로 이동했습니다.
  • GoogleMobileAds.Mediation.UnityAds를 사용하도록 어댑터 네임스페이스를 리팩터링했습니다.
  • Unity Ads Android 어댑터 버전 4.6.0.0을 지원합니다.
  • Unity Ads iOS 어댑터 버전 4.6.0.0을 지원합니다.
  • Google 모바일 광고 Unity 플러그인 버전 7.4.1로 빌드 및 테스트되었습니다.

버전 3.5.0

버전 3.4.1

버전 3.4.0

버전 3.3.0

버전 3.2.1

버전 3.2.0

버전 3.1.0

버전 3.0.1

버전 3.0.0

버전 2.7.2

버전 2.7.1

버전 2.7.0

버전 2.6.0

버전 2.5.1

버전 2.5.0

버전 2.4.7

버전 2.4.6

버전 2.4.5

버전 2.4.4

버전 2.4.3

버전 2.4.2

버전 2.4.1

버전 2.4.0

버전 2.3.0

버전 2.2.0

버전 2.1.0

  • Unity Ads Android 어댑터 버전 3.1.0.0을 지원합니다.
  • Unity Ads iOS 어댑터 버전 3.1.0.0을 지원합니다.

버전 2.0.3

  • 새로운 공개 베타 보상형 API를 지원하도록 플러그인이 업데이트되었습니다.
  • 배너 광고 지원을 추가합니다.
  • Unity Ads Android 어댑터 버전 3.0.0.2를 지원합니다.
  • Unity Ads iOS 어댑터 버전 3.0.0.3을 지원합니다.

버전 2.0.2

  • Unity Ads Android 어댑터 버전 3.0.0.0을 지원합니다.
  • Unity Ads iOS 어댑터 버전 3.0.0.1을 지원합니다.

버전 2.0.1

  • iOS용으로 빌드할 때 문제를 일으키는 '호환되지 않는 유형' 오류가 수정되었습니다.

버전 2.0.0

  • Unity Ads Android 어댑터 버전 3.0.0.0을 지원합니다.
  • Unity Ads iOS 어댑터 버전 3.0.0.0을 지원합니다.

버전 1.2.0

  • Unity Ads Android 어댑터 버전 2.3.0.0을 지원합니다.
  • Unity Ads iOS 어댑터 버전 2.3.0.0을 지원합니다.

버전 1.1.3

  • Unity Ads Android 어댑터 버전 2.2.1.0을 지원합니다.
  • Unity Ads iOS 어댑터 버전 2.2.1.0을 지원합니다.

버전 1.1.2

  • Unity Ads Android SDK 버전 2.2.0을 지원합니다.
  • Unity Ads iOS SDK 버전 2.2.0을 지원합니다.
  • 타겟팅 광고에 대한 사용자 선택을 수동으로 요청하는 UnityAds.SetGdprConsentMetaData() 메서드를 추가했습니다.

버전 1.1.1

  • Unity Ads Android SDK 버전 2.2.0을 지원합니다.
  • Unity Ads iOS SDK 버전 2.2.1을 지원합니다.

버전 1.1.0

  • Unity Ads Android SDK 버전 2.2.0을 지원합니다.
  • Unity Ads iOS SDK 버전 2.2.0을 지원합니다.

버전 1.0.0

  • 첫 출시!
  • Unity Ads Android SDK 버전 2.1.2를 지원합니다.
  • Unity Ads iOS SDK 버전 2.1.2를 지원합니다.