---
description: AppLovinMax 네이티브 미디에이션 레이아웃 구성
---

# AppLovinMax

## 미디에이션 설정

[#applovin](../../mediation#applovin "mention")

**네이티브 광고 노출을 위해서는 사용하는 광고 네트워크의 미디에이션 연동 작업이 필요합니다.**

***

## Layout

### 레이아웃 구성 샘플(native\_ad\_unit\_applovin\_max.xml)

```xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/native_unit_applovin_container"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <TextView
        android:id="@+id/native_unit_applovin_title"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:singleLine="true"
        android:textColor="@color/black"
        android:textSize="14sp" />

    <FrameLayout
        android:id="@+id/native_unit_applovin_image"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:layout_below="@id/native_unit_applovin_title"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginBottom="5dp"
        android:scaleType="centerCrop" />

    <ImageView
        android:id="@+id/native_unit_applovin_icon"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_below="@id/native_unit_applovin_image"
        android:layout_marginStart="10dp"
        android:layout_marginLeft="10dp" />

    <TextView
        android:id="@+id/native_unit_applovin_body"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/native_unit_applovin_image"
        android:layout_marginStart="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="15dp"
        android:layout_marginBottom="10dp"
        android:layout_toEndOf="@id/native_unit_applovin_icon"
        android:layout_toRightOf="@id/native_unit_applovin_icon"
        android:ellipsize="end"
        android:singleLine="true"
        android:textColor="@color/black"
        android:textSize="14sp" />

    <Button
        android:id="@+id/native_unit_applovin_cta"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/native_unit_applovin_title"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginEnd="14dp"
        android:layout_marginRight="14dp"
        android:background="@null"
        android:padding="3dp"
        android:textSize="10sp" />

</RelativeLayout>

```

***

## ViewAdapter

**XML에서 생성한 UI Component를 SDK에서 제공하는 ViewAdapter API를 사용하여 다음과 같이 설정해 줍니다.**

{% tabs %}
{% tab title="KOTLIN" %}
```kotlin
// NativeViewAdapter
val builder = NativeViewAdapter.Builder()

// AppLovinMax
builder.setAppLovinMaxViewAdapter(
  viewAdapter = AppLovinMaxNativeViewAdapter.Builder(
    nativeAdLayoutId = R.layout.native_ad_unit_applovin_max,
    nativeAdViewId = R.id.native_unit_applovin_container
  )
  .setBodyViewId(viewId = R.id.native_unit_applovin_body)
  .setIconViewId(viewId = R.id.native_unit_applovin_icon)
  .setMediaViewId(viewId = R.id.native_unit_applovin_image)
  .setCtaViewId(viewId = R.id.native_unit_applovin_cta)
  .setTitleViewId(viewId = R.id.native_unit_applovin_title)
  .build()
)

// NativeAdLoader
NativeAdLoader(
  context = ...,
  placementId = ...,
  viewAdapter = builder.build(),
  listener = ...
)
```
{% endtab %}

{% tab title="JAVA" %}
```java
// NativeViewAdapter
final NativeViewAdapter.Builder builder = new NativeViewAdapter.Builder();

// AppLovinMax
builder.setAppLovinMaxViewAdapter(
  // viewAdapter
  new AppLovinMaxNativeViewAdapter.Builder(
    // nativeAdLayoutId
    R.layout.native_ad_unit_applovin_max,
    // nativeAdViewId
    R.id.native_unit_applovin_container
  )
  .setBodyViewId(R.id.native_unit_applovin_body)
  .setIconViewId(R.id.native_unit_applovin_icon)
  .setMediaViewId(R.id.native_unit_applovin_image)
  .setCtaViewId(R.id.native_unit_applovin_cta)
  .setTitleViewId(R.id.native_unit_applovin_title)
  .build()
);

// NativeAdLoader
NativeAdLoader(
  /** Context **/
  context,
  /** PlacementId **/
  placementId,
  /** NativeViewAdapter **/
  builder.build(),
  /** NativeAdLoader.NativeListener **/
  listener
);
```
{% endtab %}
{% endtabs %}

