> For the complete documentation index, see [llms.txt](https://adpopcornssp.gitbook.io/ssp-sdk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://adpopcornssp.gitbook.io/ssp-sdk/undefined-1/max-beta/max-beta-unity-aos.md).

# MAX 미디에이션(Beta, Unity AOS)

## 1. 문서 목적

* 본 문서는 매체사가 **AdPopcornSSP SDK를 통해 AppLovin MAX 기반 광고 수익화 구조를 연동하는 방법**을 안내합니다.
* 실제 미디에이션 네트워크 구성과 운영은 내부 운영팀이 관리하며, 매체사는 **SDK 연동과 광고 호출 코드 적용만 진행하면 됩니다.**
* 실제 네트워크 구성은 내부 운영 기준에 따라 설정됩니다.

{% hint style="warning" %}
단독연동을 사용하고자하는 경우, 애드팝콘 SSP 사업팀 (<monetize@adpopcorn.com>)으로 연락부탁드립니다.
{% endhint %}

* Android 환경에서 미디에이션 기능을 사용하기 위해서는 build.gradle / AndroidManifest.xml 파일 내 추가 설정만 진행하면 됩니다.&#x20;

{% hint style="warning" %}
다만, 일부 미디에이션의 경우 AGP 버전이 구버전일 경우, 빌드에 실패하므로, UnityTool 최신 버전을 사용해 주셔야 합니다.
{% endhint %}

## 2. 적용 네트워크

별도 예외 협의가 없는 경우, 아래 **최대 범위 네트워크 기준**으로 운영됩니다.

| 네트워크                    | 리워드비디오 | 전면비디오 | 전면배너 | 네이티브 | 배너 |
| ----------------------- | ------ | ----- | ---- | ---- | -- |
| AppLovin                | O      | O     | O    | O    | O  |
| AppLovin Exchange       | O      | O     | O    | O    | O  |
| Google Bidding          | O      | O     | O    | O    | O  |
| IronSource              | O      | O     | O    |      | O  |
| Meta                    | O      | O     | O    | O    | O  |
| Mintegral               | O      | O     | O    | O    | O  |
| Moloco                  | O      | O     | O    | O    | O  |
| Unity                   | O      | O     | O    |      | O  |
| DT Exchange             | O      | O     | O    |      | O  |
| Liftoff Monetize        | O      | O     | O    | O    | O  |
| Liftoff Monetize Native |        |       |      | O    |    |
| Pangle                  | O      | O     | O    | O    | O  |
| Pangle Native           |        |       |      | O    |    |
| Meta Native             |        |       |      | O    |    |
| InMobi                  | O      | O     | O    | O    | O  |
| Google Ad Manager       | O      | O     | O    | O    | O  |
| Maio                    | O      | O     |      |      |    |

## 3. Build.gradle(Project Level)

Pangle SDK를 사용하고자 하는 경우에는 아래 Pangle 부분을 추가해 주시면 됩니다.

#### 3.1  `Custom Gradle Settings Template` 활성화 확인

Unity에서 프로젝트 레벨의 설정을 변경하려면 이 템플릿이 활성화되어 있어야 합니다.

* Unity 에디터 > Edit > Project Settings > Player > Android 탭 > Publishing Settings에서 \*\*`Custom Gradle Settings Template`\*\*가 체크되어 있는지 확인합니다.

#### 3.2 `settingsTemplate.gradle` 파일 수정

프로젝트 레벨 설정 파일인 `Assets/Plugins/Android/settingsTemplate.gradle` 파일을 열고, `allprojects { repositories { ... } }` 블록 내에 Pangle/Bytedance 저장소 URL을 추가해야 합니다.

```
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
    repositories {
        **ARTIFACTORYREPOSITORY**
        google()
        mavenCentral()		
        // Mintegral
        maven { url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea" }
        // Pangle
        maven { url "https://artifact.bytedance.com/repository/pangle" }
        // Maio
        maven { url "https://imobile-maio.github.io/maven" }        
        flatDir {
            dirs "${project(':unityLibrary').projectDir}/libs"
        }
    }
}
```

## 4. Build.gradle(App Level)

아래 설정 중, Common 라이브러리와 사용 예정인 업체의 SDK만 탑재하면 됩니다.

#### 4.1  `Custom Base Gradle Template` 활성화 확인

Unity에서 프로젝트 레벨의 설정을 변경하려면 이 템플릿이 활성화되어 있어야 합니다.

* Unity 에디터 > Edit > Project Settings > Player > Android 탭 > Publishing Settings에서 \*\*`Custom Main Gradle Template`\*\*가 체크되어 있는지 확인합니다.

#### 4.2 `mainTemplate.gradle` 파일 수정

위 설정을 활성화하면, Unity는 프로젝트 내의 특정 폴더에 기본 템플릿 파일을 생성합니다.

* 생성된 파일 경로: `Assets/Plugins/Android/mainTemplate.gradle`

```
dependencies{
    // Common
    implementation 'com.igaworks.ssp:IgawAdPopcornSSP:3.11.1'
    api 'com.google.android.gms:play-services-ads-identifier:18.2.0'
    implementation 'com.applovin:applovin-sdk:13.6.3'
    
    // Mediation
    implementation 'com.applovin.mediation:fyber-adapter:+'
    implementation 'com.applovin.mediation:google-ad-manager-adapter:+'
    implementation 'com.applovin.mediation:google-adapter:+'
    implementation 'com.applovin.mediation:ironsource-adapter:+'
    implementation 'com.applovin.mediation:vungle-adapter:+'
    implementation 'com.applovin.mediation:facebook-adapter:+'
    implementation 'com.applovin.mediation:mintegral-adapter:+'
    implementation 'com.applovin.mediation:moloco-adapter:+'
    implementation 'com.applovin.mediation:bytedance-adapter:+'
    implementation 'com.applovin.mediation:unityads-adapter:+'
    implementation 'com.applovin.mediation:maio-adapter:+'
    
    // Start Inmobi dependency 
    implementation 'com.applovin.mediation:inmobi-adapter:+'
    implementation 'com.squareup.picasso:picasso:2.8'
    implementation 'androidx.recyclerview:recyclerview:1.1.0'
    // End Inmobi dependency    
}
```

## 5. AndroidManifest.xml

AdMob SDK를 사용하는 경우에는 아래의 설정을 추가해 줍니다.

입력해야 되는 키 값에 대해서는 사업팀(<monetize@adpopcorn.com>)에 문의해 주세요

```
<meta-data
    android:name="com.google.android.gms.ads.APPLICATION_ID"
    android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
```
