레벨플레이 유니티 패키지 연동
유니티 레벨플레이 미디에이션은 유니티 버전 2021.3 이상, 안드로이드 OS 4.4 (API 버전 19) 버전 이상을 지원합니다. iOS 버전 지원은 사용하는 광고 네트워크 구성에 따라 다를 수 있으며, 아이언소스 애즈 및 레벨플레이 미디에이션은 iOS 13 이상, XCode 16 이상 버전을 지원합니다.
1단계. 레벨플레이 유니티 패키지를 프로젝트에 추가하기
두 가지 방법 중 하나를 통해 레벨플레이 패키지를 설치할 수 있습니다:
- [권장] 유니티 에디터에서 Window -> Package Manager 메뉴로 이동한 후, Ads Mediation 패키지를 프로젝트에 추가합니다. “Ads Mediation”을 검색하여 찾은 후 설치 버튼을 클릭합니다.
-
-
- 패키지 네임으로도 해당 패키지를 검색하실 수 있습니다: com.unity.services.levelplay
-
- Download Unity Plugin Version 9.0.1 (.unitypackage)
설치가 완료되면, 기본 탑재된 샘플 코드를 참고 및 활용하여 레벨플레이를 연동합니다. 패키지 매니저의 패키지 세부정보 뷰를 통해 Samples로 이동하여, 레벨플레이 샘플 코드를 불러오고 이 코드로 이것 저것 시험해 보세요!
2단계.SDK 초기화
레벨플레이 플랫폼에서 아직 새 앱을 생성하지 않았다면, 해당 플랫폼으로 이동해서 바로 새 앱을 생성합니다. 해당 작업이 완료되었으면, 할당받은 앱 키를 사용해 SDK를 초기화합니다:
- 네임 스페이스를 불러옵니다:
C# 스크립트 최상단에서 하기의 네임 스페이스를 추가합니다:using Unity.Services.LevelPlay; - SDK 초기화
Start() 메서드 내에서, 이벤트 리스너를 등록하고 SDK를 초기화합니다:
public void Start() {
// Register OnInitFailed and OnInitSuccess listeners
LevelPlay.OnInitSuccess += SdkInitializationCompletedEvent;
LevelPlay.OnInitFailed += SdkInitializationFailedEvent;
// SDK init
LevelPlay.Init(“ThisIsYourAppKey”);
}
초기화 관련 중요 정보를 문제없이 수신하려면, 반드시 레벨플레이 초기화 이전에 OnInitFailed 및 OnInitSuccess 콜백을 등록해야 합니다:
OnInitSuccess – 초기화가 성공적으로 완료되었을 때 호출됩니다. 해당 이벤트 콜백을 수신한 후에 광고 객체 생성 및 광고 로드를 할 수 있습니다.
OnInitFailed – 서버로부터 초기화 응답으로 전달되는 SDK 및 앱 설정 취득에 실패하여 광고 로드가 불가능합니다. 초기화에 실패했다면, 이후 인터넷 연결 상태가 양호하고 초기화 실패 이유가 해결된 상태에서 다시 초기화를 시도하시는 것이 좋습니다.
Set UserID
레벨플레이 초기화 시 유저 ID를 등록할 수 있습니다. 이는 Ad Quality의 User Journey 기능을 사용하거나, 보상형 광고에서 유저 보상 시 서버간 콜백 방식을 사용하는 경우 유용합니다.
LevelPlay.Init("ThisIsYourAppKey", "UserId");
3단계. 레벨플레이 네트워크 매니저
레벨플레이 네트워크 매니저 창은 레벨플레이에 관련된 모든 것을 한 번에 처리할 수 있는 창입니다. 유니티 에디터의 최상단 네비게이션 바에서, Ads Mediation 메뉴에서 선택해 진입할 수 있습니다. 여기에서 사용 가능한 기능은 아래와 같습니다:
- 레벨플레이 SDK 업데이트합니다.
- 사용할 광고 네트워크 관련 소프트웨어 (광고 네트워크 SDK 및 해당 SDK용 어댑터)를 설치 및 업데이트합니다. 설치가 끝나면 각 광고 네트워크 별로 구성 설정이 필요합니다. 자세한 사항은 여기를 참고하세요.
- iOS 용 앱을 빌드하는 경우, 앱의 Info.plist에 설치된 광고 네트워크에 따라 각 네트워크의 SKAdNetwork ID가 자동으로 업데이트 됩니다.
레벨플레이 유니티 패키지 8.8.1부터, 기존에 설치되던 ironSource Ads 어댑터와 더불어 Unity Ads 어댑터는 기본으로 자동 설치됩니다. Unity Ads 계정 설정에 대한 더 자세한 정보는, Unity Ads 연동 가이드를 확인하세요.

안드로이드
안드로이드 빌드 구성에 변경 사항을 적용하고, 필요한 각 광고 네트워크 관련 소프트웨어를 다운로드하려면, resolver를 사용해야 합니다.
Assets → Mobile Dependency Manager → Android Resolver → Resolve로 이동합니다.
레벨플레이 네트워크 매니저에서 변경사항이 있을 경우에는 바로 다음에 이 작업을 수행해야 합니다.
Custom Gradle을 사용하는 경우, resolver에서 프로젝트에 각 광고 네트워크 관련 소프트웨어를 다운로드 하지 않고 대신 Gradle 파일을 통해 구성하여 컴파일 시 참조하도록 할 수 있습니다.
이 방법을 적용하려면, 아래의 단계를 따라 구성합니다(참고: 레벨플레이 유니티 패키지 8.10.0 이상 버전에서 Mobile Dependency Resolver를 불러온 경우에는 자동으로 설정됩니다):
- Edit → Project Settings → Player → Android → Publishing Settings로 이동합니다.
- Custom Main Gradle Template 옵션을 활성화 합니다.
- Assets → Mobile Dependency Manager → Android Resolver → Settings로 이동합니다.
- “Patch mainTemplate.gradle”를 선택합니다.
- OK 버튼을 눌러 변경사항을 저장합니다.
4단계. 추가 설정
iOS
SKAdNetwork 지원
8.10.0 이하 버전을 사용하는 경우, Ads Mediation > Developer Settings > LevelPlay Mediation Settings 메뉴 아래에 있는 아이언소스 SDK SKAN ID 자동화 옵션도 활성화 해 주셔야 사용이 가능합니다.
레벨플레이 SDK 7 이상 버전을 사용하며 iOS에서 광고 송출을 활성화하려면, 반드시 앱의 프로퍼티 목록 파일 (Info.plist)에 설치된 각 광고 네트워크의 SKAdNetwork ID가 포함되어 있어야 합니다.
- XCode의 프로젝트 탐색기에서 Info.plist 파일을 선택합니다.
- 프로퍼티 목록 에디터에서 목록 내 아이템 옆에 있는 Add button (+)을 클릭하고 Return키를 누릅니다.
- 키 명칭에 SKAdNetworkItems를 입력합니다.
- Type 열에 있는 팝업 메뉴에서 Array를 선택합니다.
- Dictionary 항목을 생성하고, 그 아래에 string 항목을 하나 생성합니다.
- String 항목의 키 명칭을 SKAdNetworkIdentifier로 입력하고, 아래 키 값을 입력합니다:
su67r6k2v3.skadnetwork
아래의 코드를 사용해 Info.plist 파일에 직접 SKAdNetworkIdentifier를 입력할 수도 있습니다.
<key>SKAdNetworkItems</key> <array> <dict> <key>SKAdNetworkIdentifier</key> <string>su67r6k2v3.skadnetwork</string> </dict> </array>
프로퍼티 항목 편집에 대한 더 자세한 정보는, Xcode 문서를 참고 부탁 드립니다.
App Transport Security 설정 settings
모든 미디에이션 네트워크상에서 아이언소스 광고 게재가 지속적으로 지원되도록 하려면, 반드시 아래와 같이 info.plist 파일을 수정해야 합니다:
- ‘NSAppTransportSecurity‘ 라는 명칭의 키를 Dictionary 타입으로 추가합니다. 반드시 ‘최상위 프로퍼티 키‘로 생성하셔야 합니다.
- 이 dictionary 키 하위에 ‘NSAllowsArbitraryLoads‘ 라는 Boolean 타입 키를 생성하고 값을 YES로 설정합니다.
- 충돌을 유발할 수 있기 때문에, 프로젝트의 Info.plist가 ‘NSAllowsArbitraryLoads‘ 이외의 예외사항을 포함하지 않도록 합니다.
- ATS에 대한 더 자세한 정보는 여기에서 보실 수 있습니다.
안드로이드
안드로이드 13 버전 이상 (API 버전 33+)을 타겟으로 빌드된 앱에서는 아래와 같이 구글 플레이 서비스 일반 권한을 Manifest 파일에 선언해야 합니다:
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
구글 광고 ID 변경사항에 대한 더 자세한 사항은 여기span style=”font-weight: 400;”를 참고하세요.
5단계. 연동을 검증하기
아이언소스 SDK에서 제공하는 레벨플레이 Test Suite을 통해 SDK와 미디에이션 연동이 성공적으로 완료되었는지 간단하게 확인할 수 있습니다. 앱 연동 상태, 플랫폼 설정 정합성 및 구성 미디에이션 광고 네트워크에서 제공된 광고 리뷰 등을 할 수 있습니다.
앱 내에서 Test Suite 기능을 활성화 하려면, SDK 초기화 설정 이전에 setMetaData API를 아래와 같이 호출합니다:
LevelPlay.SetMetaData("is_test_suite", "enable");
레벨플레이 초기화가 성공적으로 완료되었으면, 하기 메서드를 호출해 test suite을 실행합니다:
LevelPlay.LaunchTestSuite();
레벨플레이 연동 test suite 도구의 구현 예제 및 더 자세한 사항은 이 문서로 이동해서 확인해 주세요..
완료했습니다!
이제 아이언소스 광고 유닛 및 미디에이션 도구 사용을 시작하실 수 있습니다.
다음엔 뭘 할까요?
아래의 연동 가이드를 따라 광고 포맷을 연동해 보세요:
아이언소스 미디에이션 플랫폼에 관심이 있으신가요? 미디에이션 설명서를 따라 보상형 동영상 또는 인터스티셜(전면) 광고를 연동해 보세요.
