AdForus
SDK 설치
v24.1.0 호환 지원합니다.
api 'com.google.android.gms:play-services-ads:24.1.0'
AndroidManifest.xml 설정
SDK의 정상 동작을 위해선 AnroidManifest.xml 파일 내에 Key-Value 값을 설정해야 합니다.
입력해야 되는 키 값에 대해서는 사업팀(monetize@adpopcorn.com)에 문의해 주세요.
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
네이티브 광고 추가설정
다른 타입의 광고와 다르게 네이티브 광고에서 미디에이션 사용하고자 할 경우에는 레이아웃에 대한 추가 설정이 필요합니다.
AdPopcornSSPNativeAd layout 내에 NativeAdView 영역을 추가해 주세요
native_ad_mediation_layout.xml 샘플
<?xml version="1.0" encoding="utf-8"?>
<com.igaworks.ssp.part.nativead.AdPopcornSSPNativeAd
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/adpopcorn_native_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<!-- AdMob or GAM or ADOP or AdForus -->
<com.google.android.gms.ads.nativead.NativeAdView
android:id="@+id/admob_unified_native_ad_view"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<include layout="@layout/admob_native_ad_unit_layout"/>
</com.google.android.gms.ads.nativead.NativeAdView >
</com.igaworks.ssp.part.nativead.AdPopcornSSPNativeAd>
admob_native_ad_unit_layout.xml 샘플
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="#FFFFFF"
android:minHeight="50dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="3dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/admob_ad_app_icon"
android:layout_width="40dp"
android:layout_height="40dp"
android:adjustViewBounds="true"
android:paddingBottom="5dp"
android:paddingEnd="5dp"
android:paddingRight="5dp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/admob_ad_headline"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#0000FF"
android:textSize="16sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/admob_ad_advertiser"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="bottom"
android:textSize="14sp"
android:textStyle="bold"/>
<RatingBar
android:id="@+id/admob_ad_stars"
style="?android:attr/ratingBarStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:isIndicator="true"
android:numStars="5"
android:stepSize="0.5" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/admob_ad_body"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:layout_marginEnd="20dp"
android:textSize="12sp" />
<com.google.android.gms.ads.nativead.MediaView
android:id="@+id/admob_ad_media"
android:layout_gravity="center_horizontal"
android:layout_width="250dp"
android:layout_height="175dp"
android:layout_marginTop="5dp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:orientation="horizontal"
android:paddingBottom="10dp"
android:paddingTop="10dp">
<TextView
android:id="@+id/admob_ad_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:paddingStart="5dp"
android:paddingRight="5dp"
android:paddingEnd="5dp"
android:textSize="12sp" />
<TextView
android:id="@+id/admob_ad_store"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:paddingStart="5dp"
android:paddingRight="5dp"
android:paddingEnd="5dp"
android:textSize="12sp" />
<Button
android:id="@+id/admob_ad_call_to_action"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
xml에서 생성한 ui component를 sdk에서 제공하는 setAdForusViewBinder
API를 이용해 아래와 같이 설정해 줍니다.
// AdForus
AdForusViewBinder adForusViewBinder = new AdForusViewBinder.Builder(R.id.admob_unified_native_ad_view, R.layout.admob_native_ad_unit_layout)
.iconViewId(R.id.admob_ad_app_icon)
.headlineViewId(R.id.admob_ad_headline)
.bodyViewId(R.id.admob_ad_body)
.mediaViewId(R.id.admob_ad_media)
.callToActionId(R.id.admob_ad_call_to_action)
.advertiserViewId(R.id.admob_ad_advertiser)
.priceViewId(R.id.admob_ad_price)
.starRatingViewId(R.id.admob_ad_stars)
.storeViewId(R.id.admob_ad_store)
.build();
adPopcornSSPNativeAd.setAdForusViewBinder(adForusViewBinder);
viewBinder Builder 생성 시, view id(R.id.admob_unified_native_ad_view)
와 layout i
viewBinder Builder 생성 시, view id(R.id.admob_unified_native_ad_view)
와 layout id(R.layout.admob_native_ad_unit_layout)
는 필수로 넘겨주어야 하며, 그 외 ui component에 대해서는 사용하는 리소스에 대해서만 설정해 주면 됩니다.
Last updated
Was this helpful?