REMON Android SDK GUIDE (SDK Version 1.4.1) 1 / 25
문서개정내역 변경일버전변경내용비고 2014.06.30 1.0.0 최초작성 2014.09.30 1.1.0 개인정보항목변경, 개인정보이용약관기능추가 2014.12.01 1.2.0 Proguard 추가 2014.12.16 1.2.0 Android Studio 기준샘플및가이드추가 2015.01.29 1.3.0 광고사이즈추가및변경 2015.02.06 1.3.1 일부 Permission를옵션으로변경 2015.11.11 1.4.0 일부오류수정및 Listener 적용방법변경 2015.12.09 1.4.1 외부광고연동기능추가 2 / 25
< 목차 > 1. REMON SDK 소개 ----------------------------------------------------------------- 5 2. 변경이력 --------------------------------------------------------------------------- 5 3. REMON 광고삽입방법 ----------------------------------------------------------- 6 3.1 RemoN SDK 구성 -------------------------------------------------------------------------------- 6 3.1.1 cid 발급받기 --------------------------------------------------------------------------------- 6 3.1.2 라이브러리 Import --------------------------------------------------------------------------- 6 3.1.2.1 ADT를사용한경우 ------------------------------------------------------------------- 6 3.1.2.2 Android Studio를사용할경우 ------------------------------------------------------ 8 3.1.3 AndroidManifest.xml 설정 ------------------------------------------------------------------ 11 3.1.4 광고요청을위한 UI 구성및설정 -------------------------------------------------------- 12 3.1.5 ProGuard 설정 ( 옵션 ) ------------------------------------------------------------------------ 20 4. CLASS REFERENCE ---------------------------------------------------------------- 20 4.1 Package kr.co.dnasoft.remonsdk ----------------------------------------------------------------- 20 4.1.1 Class Summary -------------------------------------------------------------------------------- 20 4.1.2 Interface Summary ---------------------------------------------------------------------------- 20 4.1.3 Enum Summary ------------------------------------------------------------------------------- 20 4.2 Class AdView --------------------------------------------------------------------------------------- 20 4.2.1 Constructor Summary --------------------------------------------------------------------------- 20 4.2.2 Method Summary ----------------------------------------------------------------------------- 21 4.3 Class AdInfo ---------------------------------------------------------------------------------------- 22 4.3.1 Constructor Summary ------------------------------------------------------------------------- 22 4.4 Class AdInterstitial --------------------------------------------------------------------------------- 23 4.4.1 Constructor Summary ------------------------------------------------------------------------- 23 4.4.2 Method Summary ----------------------------------------------------------------------------- 23 4.5 Class AdListener ----------------------------------------------------------------------------------- 24 4.5.1 Interface AdListener.OnAdClickedListener ---------------------------------------------------- 24 4.5.2 Interface AdListener.OnAdFailedListener ----------------------------------------------------- 24 4.5.3 Interface AdListener.OnAdClosedListener ---------------------------------------------------- 24 3 / 25
4.5.4 Interface AdListener.OnAdLoadedListener --------------------------------------------------- 24 4.5.5 Interface AdListener.OnAdWillLoadListener -------------------------------------------------- 25 5. ENUM ADERRORCODE ----------------------------------------------------------- 25 4 / 25
1. RemoN SDK 소개 이가이드는 Android Application 에모바일광고를노출하기위한광고데이터요청과처리방법 을설명한다. 어플리케이션운영정책에어긋나는경우적립금지급이거절될수있으니유의하시기바랍니다. - 광고종류및사이즈 광고종류 사이즈 지원버전 Inline 320 * 50 9 이상 (2.3) Square 150 * 150 9 이상 (2.3) Rectangle 300 * 250 9 이상 (2.3) Floating( 확장형 ) 104 * 77 -> 300 * 250 11 이상 (3.0) Interstitial 320 * 480 9 이상 (2.3) 2. 변경이력 Version 1.4.1 - 외부업체광고연동기능추가 Version 1.4.0 - 광고이미지사이즈오류수정 - Listener 적용방식변경 - SDK Log 설정방법변경 - WebView 광고추가 - Animation 기능추가 Version 1.3.1 - 일부 Permission를옵션으로변경 Version 1.3.0 - 광고사이즈추가및변경 Version 1.2.0 - Google Ad Id 사용을위한 google-play-services 라이브러리및사용코드추가 - 갱신오류수정 Version 1.1.0 - 개인정보항목변경 - 위치정보관련항목변경 - 개인정보이용약관관련기능추가 Version 1.0.0 - 최초작성 5 / 25
3. RemoN 광고삽입방법 3.1 RemoN SDK 구성 - RemoNSDK.jar : RemoN 광고를삽입해주는라이브러리 - RemonTest : Eclipse용광고샘플 - RemonTest_Android_Studio : Android Studio용광고샘플 3.1.1 cid 발급받기 - 실제광고를다운로드받고수익창출을위해서 http://www.realclick.co.kr/product/?sidx=rm 에 서회원가입후앱등록절차를거쳐 cid 를발급받아야한다. 3.1.2 라이브러리 Import 3.1.2.1 ADT 를사용한경우 - RemoN SDK 를프로젝트내에라이브러리로 Import 한다. 6 / 25
- Google play service 라이브러리추가 ( 항상최신버전을유지하도록한다 ) ( 기본위치 : {SDK Root/extras/google/google_play_services/libproject/google-play-services_lib) 만약존재하지않을경우 SDK Manager 에서 Extras/Google Play Services 를설치한다. 7 / 25
3.1.2.2 Android Studio 를사용할경우 - SDK 를해당모듈내의 libs 폴더로복사한다. - 프로젝트위에서마우스오른쪽버튼클릭후 Open Module Settings 메뉴를클릭한다.. 8 / 25
- 해당모듈을선택하고, Dependencies 탭을클릭한다. 이후화면하단에 + 버튼을클릭하고 File Dependency 을클릭한다. - RemoN_SDK_x.x.x.jar 을선택후 OK 클릭한다. 9 / 25
- 아래와같이 SDK 가추가되었는지확인후 OK 를클릭한다. - 해당모듈의 build.gradle 을열어정상인지확인한다. 10 / 25
3.1.3 AndroidManifest.xml 설정 - 아래세가지필수권한을설정하여야하며, 필수권한미설정시정상적인광고노출되지않 는다. <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.access_wifi_state" /> - 아래두가지옵션권한은사용자약관에동의시지역기반타겟팅에사용된다. ( 사용약관에동 의하였다고하더라도아래권한을설정하지않았을경우지역기반타겟팅이되지않는다.) <uses-permission android:name="android.permission.access_fine_location" /> <uses-permission android:name="android.permission.access_coarse_location" /> - 광고를넣을 Activity 에 Activity 재생성방지를위해반드시 android:configchanges="orientation" 을설정해준다. (Project Build Target API Level 이 13 이상인경우에는 screensize 설정추가필요 ) - Google Ad ID 사용을위한 meta-data 를반드시추가한다. <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="kr.co.dnasoft.remontest" android:versioncode="1" android:versionname="1.1.0" > <uses-sdk android:minsdkversion="8" android:targetsdkversion="19" /> <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.access_wifi_state" /> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.access_fine_location" /> <uses-permission android:name="android.permission.access_coarse_location" /> <application android:allowbackup="true" android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@style/apptheme" > 필수권한설정 <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <!-- Sample MainActivity --> <activity android:name="kr.co.dnasoft.remontest.sampleactivity" android:label="@string/app_name" android:configchanges="orientation" > Google Ad Id 사용을 위한 meta-data 추가 11 / 25
<intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> Project Build Target API Level이 </activity> 13 이상인경우에는 screensize <!-- JAVA Inline Banner Type 광고 Sample --> <activity android:name="kr.co.dnasoft.remontest.javatypeinlinebanner" android:configchanges="orientation" /> <!-- XML Inline Banner Type 광고 Sample --> <activity android:name="kr.co.dnasoft.remontest.xmltypeinlinebanner" android:configchanges="orientation" /> </application> </manifest> 설정추가필요 3.1.4 광고요청을위한 UI 구성및설정 - 광고를넣고자하는 View 가들어있는 Activity 가생성될때 AdView 객체를생성하고광고요청을위해광고 View에필요한리스너와할당받은 clientid를설정한다. ( 광고별 Parameter 적용방법은샘플을참고하도록한다 ) Inline Banner 샘플 public class JavaTypeInlineBanner extends Activity { private final static String TAG = JavaTypeInlineBanner.class.getName(); private static AdView private LinearLayout adview = null; laytout = null; protected oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.java_type_banner); initremon(); private initremon() { laytout = (LinearLayout) findviewbyid(r.id.ad_layout); //RemoN 광고 View 생성및설정 if(adview!= null) { adview.stopad(); adview.setadlistener(null); laytout.removeview(adview); adview = null; //RemoN 광고뷰생성및설정 12 / 25
adview = new AdView(this.getApplicationContext()); /*========================================== * Listener( 해당기능이필요없으면설정하지않아도된다.) ===========================================*/ AdListener listener = new AdListener(); // 광고클릭시실행될 Listener listener.onadclickedlistener = new OnAdClickedListener() { public OnClickedAd() { Log.i(TAG, "JAVA Type Inline Banner Click ad"); ; // 광고실패시실행될 Listener listener.onadfailedlistener = new OnAdFailedListener() { public OnAdFiled (AdErrorCode arg0, String arg1) { Log.w(TAG, "JAVA Type Inline Banner Ad failed : " + arg1); ; // 광고가정상적으로 Load 될때실행될 Listener listener.onadloadedlistener = new OnAdLoadedListener() { public OnAdLoaded() { Log.i(TAG, "JAVA Type Inline Banner Ad loaded"); ; // 광고를호출하는시점에실행될 Listener listener.onadwillloadlistener = new OnAdWillLoadListener() { public OnAdWillLoad () { Log.i(TAG, "JAVA Type Inline Banner Ad will load"); ; // 광고를종료할때실행될 Listener listener.onadclosedlistener = new OnAdClosedListener() { public OnAdClosed () { Log.i(TAG, "JAVA Type Inline Banner Ad closed"); ; // 할당받은 cid 설정 ( 필수 ) adview.setcid("mtqxmdg3ndq1mzy3otc4"); // 광고배경색설정 //( 서버에서내려오는배경색이없는경우사용자지정색으로설정 ) adview.setbackgroundcolor("#ffeaeaea"); // 광고갱신주기설정 (default : 30초, max : 300초 ) adview.setrefreshinterval(30); //SDK State Log 설정 ( 미사용시 Log 미표시 ) 13 / 25
adview.setsdklog(tag + " State"); // 광고활성화설정 : INVISIBLE, GONE 로설정시광고중단 (default : VISIBLE) adview.setvisibility(view.visible); laytout.addview(adview); // 약관동의여부설정 adview.setterms(true); // 사용자정보설정 AdInfo adinfo = new AdInfo(); // 사용자성별 adinfo.setgender("f"); // 사용자연령대 adinfo.setage(38); adview.setadinfo(adinfo); // 리스너적용 adview.setadlistener(listener); // Animation 설정 (Default : FADE) adview.setanimationtype(animationtype.slide_ltor); // 광고요청 adview.requestad(); protected onpause() { if(adview!= null) { adview.onpause(); super.onpause(); protected onresume() { if(adview!= null) { adview.onresume(); super.onresume(); protected ondestroy() { if(adview!= null) { adview.stopad(); adview.setadlistener(null); laytout.removeview(adview); adview = null; super.ondestroy(); 14 / 25
전면광고샘플 전면광고이용시아래의명시된 Activity 를추가해야한다. <activity android:name="kr.co.dnasoft.remonsdk.adactivity" android:screenorientation="portrait" android:configchanges="orientation" > </activity> 전면광고를사용하기위해서 는위분분을반드시추가해 야한다. public class JavaTypeInterstitialBanner extends Activity { // 전역광고객체 AdInterstitial interstitial = null; protected oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); initremon(); private initremon() { // 광고 Listener AdListener listener = new AdListener(); // 광고클릭시실행될 Listener listener.onadclickedlistener = new OnAdClickedListener() { public OnClickedAd() { Log.i("JavaTypeInterstitialBanner", "JAVA Type Interstitial Banner Click ad"); ; // 광고실패시실행될 Listener listener.onadfailedlistener = new OnAdFailedListener() { public OnAdFiled (AdErrorCode arg0, String arg1) { Log.i("JavaTypeInterstitialBanner", " JAVA Type Interstitial Banner Failed "); Log.i("JavaTypeInterstitialBanner", "Error Code : " + arg0 + ", Reason : " + arg1); ; // 광고가정상적으로 Load 될때실행될 Listener listener.onadloadedlistener = new OnAdLoadedListener() { public OnAdLoaded() { Log.i("JavaTypeInterstitialBanner", " JAVA Type Interstitial Banner Loaded "); ; // 광고를호출하는시점에실행될 Listener listener.onadwillloadlistener = new OnAdWillLoadListener() { 15 / 25
; public OnAdWillLoad () { Log.i("JavaTypeInterstitialBanner", " JAVA Type Interstitial Banner Will Load"); // 광고를종료할때실행될 Listener listener.onadclosedlistener = new OnAdClosedListener() { public OnAdClosed () { Log.i("JavaTypeInterstitialBanner", " JAVA Type Interstitial Banner Closed "); ; // 초기화 ( 인자로 Activity 와 AdListener 객체전달 ) interstitial = new AdInterstitial(this, listener); // 발급받은 client Id 설정 (Mandatory) interstitial.setcid("mtqyodkzntmxntcynje4"); // 자동닫힘설정 (Optional, Default : false) interstitial.settestmode(true); // 자동닫힘설정 (Optional, Default : false) interstitial.setlogmode(true); // 광고배경색설정 ( 서버에서내려오는배경색이없는경우사용자지정색으로설정 ) interstitial.setuserbgcolor("#cef279"); // 자동닫힘설정 (Optional, Default : false) interstitial.setuseautoclose(true); // 자동닫힘시간설정 (Optional, Default : 10, 범위 : 0 추가 10 이하 ) interstitial.setautoclosetime(30); // 약관동의여부설정 (Optional, Default : false) interstitial.setterms(true); // 사용자정보설정 (Optional) AdInfo adinfo = new AdInfo(); // 사용자성별 (Optional, m : 남성, f : 여성 ) adinfo.setgender("f"); // 사용자연령대 (Optional) adinfo.setage(38); interstitial.setadinfo(adinfo); // 광고요청 interstitial.requestad(); protected onpause() { super.onpause(); protected onresume() { super.onresume(); protected ondestroy() { // 광고종료시광고객체해제 16 / 25
if(interstitial!= null) { interstitial.removead(); interstitial = null; super.ondestroy(); 약관동의방식 약관동의여부를사용자가설정할수있다. <activity 약관동의이용시아래의명시된 Activity 를추가해야한다 android:name="kr.co.dnasoft.remonsdk.agreeactivity" android:screenorientation="portrait" android:configchanges="orientation" > </activity> 약관동의를사용하기위해서 는위분분을반드시추가해 야한다. public class AgreeSampleActivity extends Activity { private final static String TAG = AgreeSampleActivity.class.getName(); private static AdView adview = null; private LinearLayout laytout = null; /** 사용자에게노출하여사용자가선택한값저장후사용 */ private boolean agreeflag = false; protected oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.java_type_banner); laytout = (LinearLayout) findviewbyid(r.id.ad_layout); initremon(); Agreement(); private initremon() { //RemoN 광고 View 생성및설정 if(adview!= null) { adview.stopad(); adview.setadlistener(null); laytout.removeview(adview); adview = null; //Remon 광고뷰생성및설정 adview = new AdView(this); ); // 광고를종료할때실행될 17 / 25
/*========================================== * Listener( 해당기능이필요없으면설정하지않아도된다.) ===========================================*/ AdListener listener = new AdListener(); // 광고클릭시실행될 Listener listener.onadclickedlistener = new OnAdClickedListener() { public OnClickedAd() { Log.i(TAG, " AgreeSampleActivity Inline Banner Click ad"); ; // 광고실패시실행될 Listener listener.onadfailedlistener = new OnAdFailedListener() { public OnAdFiled (AdErrorCode arg0, String arg1) { Log.w(TAG, " AgreeSampleActivity Inline Banner Ad failed : " + arg1); ; // 광고가정상적으로 Load 될때실행될 Listener listener.onadloadedlistener = new OnAdLoadedListener() { public OnAdLoaded() { Log.i(TAG, " AgreeSampleActivity Inline Banner Ad loaded"); ; // 광고를호출하는시점에실행될 Listener listener.onadwillloadlistener = new OnAdWillLoadListener() { public OnAdWillLoad () { Log.i(TAG, "AgreeSampleActivity Inline Banner Ad will load"); ; // 광고를종료할때실행될 Listener listener.onadclosedlistener = new OnAdClosedListener() { public OnAdClosed () { Log.i(TAG, " AgreeSampleActivity Inline Banner Ad closed"); ; // 할당받은 client Id 설정 ( 필수 ) adview.setcid("mtqxmdg3ndq1mzy3otc4"); // 광고배경색설정 ( 서버에서내려오는배경색이없는경우사용자지정색으로설정 ) adview.setbackgroundcolor("#ffeaeaea"); // 광고갱신주기설정 (default : 30초, max : 300초 ) adview.setrefreshinterval(30); //SDK State Log 설정 ( 미사용시 Log 미표시 ) adview.setsdklog(tag + " State"); // 광고활성화설정 : INVISIBLE, GONE 로설정시광고중단 (default : VISIBLE) 18 / 25
adview.setvisibility(view.visible); laytout.addview(adview); // 사용자정보설정 AdInfo adinfo = new AdInfo(); adinfo.setgender("f"); adinfo.setage(38); adview.setadinfo(adinfo); // 리스너적용 adview.setadlistener(listener); private Agreement() { Intent intent = new Intent(AgreeSampleActivity.this, AgreeActivity.class); startactivityforresult(intent, 1); intent = null; protected onactivityresult(int requestcode, int resultcode, Intent data) { super.onactivityresult(requestcode, resultcode, data); if(requestcode== 1 resultcode==result_ok){ if(data.getstringextra("agreeflag").equals("y")){//use data if(adview!= null) { agreeflag = true; else { if(adview!= null) { agreeflag = false; // 약관동의여부설정 adview.setterms(agreeflag); // 광고요청 adview.requestad(); protected onpause() { if(adview!= null) { adview.onpause(); super.onpause(); protected onresume() { if(adview!= null) { adview.onresume(); super.onresume(); 19 / 25
protected ondestroy() { if(adview!= null) { adview.stopad(); adview.setadlistener(null); laytout.removeview(adview); adview = null; laytout = null; super.ondestroy(); 3.1.5 ProGuard 설정 ( 옵션 ) Proguard 설정시아래사항을추가한다. -dontwarn android.support.**,com.google.android.gms.** -dontwarn kr.co.dnasoft.remonsdk.** -keep class kr.co.dnasoft.remonsdk.** {*; 4. Class reference 4.1 Package kr.co.dnasoft.remonsdk 4.1.1 Class Summary AdView 광고가보여지는 View 의 Object 에해당하는클래스이다. 4.1.2 Interface Summary AdListener.OnAdClickedListener 광고를클릭시실행될 Listener AdListener.OnAdFailedListener 광고다운로드실패시실행될 Listener AdListener.OnAdClosedListener 광고를종료할때실행될 Listener AdListener.OnAdLoadedListener 광고가정상적으로 Load 될때실행될 Listener AdListener.OnAdWillLoadListener 광고를호출하는시점에실행될 Listener 4.1.3 Enum Summary ADState 광고상태표시 ADErrorCode 광고노출과관련된 Error Type을지정한다. 4.2 Class AdView 4.2.1 Constructor Summary AdView(Context context) Java 기반광고객체생성 20 / 25
AdView(Context context, AttributeSet attrs) XML 기반광고객체생성 AdView(Context context, AttributeSet attrs, int defstyle) XML 기반광고객체생성 4.2.2 Method Summary onpause() 광고갱신을중지 onresume() 광고갱신을일시적으로재개한다. requestad() 광고요청 stopad() 광고중지이함수가호출된이후에는다시광고갱신을재개할수없다. setbackgroundcolor(string userbgcolor) Server에서내려오는배경색이없을경우사용자가지정한배경색을설정한다. String getbackgroundcolor() 지정한사용자배경색을반환한다. String setcid(string clientid) 사용자 cid를지정한다. String getcid() 지정한 cid를반환한다. setrefreshinterval(int refreshinterval) 광고갱신주기를설정한다. Int getrefreshinterval() 지정한광고갱신주기를반환한다. setvisibility(int visibility) 광고 View의활성화여부를설정한다. int getvisibility() 지정한광고 View의활성화여부를반환한다. setsdklog(string tag) SDK 진행상황 Log 출력을설정한다. setterms(boolean isterms) 개인정보약관동의여부설정한다. boolean isterms() 개인정보약관동의여부반환한다. setadinfo(adinfo adinfo) 21 / 25
AdInfo AdListener 사용자정보를설정한다. getadinfo() 사용자정보를반환한다. setanimationtype(animationtype animationtype) 광고View의 Animation을설정한다. setadlistener(adlistener adlistener) 광고View에 Listener를설정한다. getadlistener() 설정한 Listener를반환한다. AdListener.OnAdClickedListener 광고를클릭시실행될 Listener AdListener.OnAdFailedListener 광고다운로드실패시실행될 Listener AdListener.OnAdClosedListener 광고를종료할때실행될 Listener AdListener.OnAdLoadedListener 광고가정상적으로 Load 될때실행될 Listener AdListener.OnAdWillLoadListener 광고를호출하는시점에실행될 Listener 4.3 Class AdInfo 4.3.1 Constructor Summary AdInfo() 광고추가정보객체생성 4.3.2 Method Summary setgender(string gender) 앱사용자의성별정보를설정한다. String Void 앱내부에서사용자의성별정보를가지는경우, gender 속성에할당하여타겟팅광고를수신받을수있다. 다음과같은포맷의문자열만할당가능하며, 유효하지않은포맷으로할당한경우무시된다. - 남성 : M - 여성 : F getgender() 설정된사용자의성별을반환한다. setage(int age) 앱사용자의나이정보를설정한다. 22 / 25
int 앱내부에서사용자의나이정보를가지는경우 age 속성에할당하여타겟팅광고를수신받을수있다. 숫자형식만할당가능하며, 유효하지않은경우무시된다. getage() 설정된사용자의나이가있다면반환한다. 4.4 Class AdInterstitial 4.4.1 Constructor Summary AdInterstitial(Activity activity, AdListener listener) 전면광고객체생성 4.4.2 Method Summary onpause() 광고갱신을중지 onresume() 광고갱신을일시적으로재개한다. requestad() 광고요청 stopad() 광고중지이함수가호출된이후에는다시광고갱신을재개할수없다. setbackgroundcolor(string userbgcolor) Server에서내려오는배경색이없을경우사용자가지정한배경색을설정한다. String getbackgroundcolor() 지정한사용자배경색을반환한다. String setcid(string clientid) 사용자 cid를지정한다. String getcid() 지정한 cid를반환한다. setuseautoclose((boolean useautoclose) 광고의자동닫힘여부를설정한다. (Default : false) boolean getuseautoclose() 광고의자동닫힘여부를반환한다. seautoclosetime(int autoclosetime) 광고의자동닫힘시간를설정한다. (Default : 3초, 범위 : 0 초과 10 이하 ) boolean getautoclosetime() 광고의자동닫힘시간을반환한다. 23 / 25
boolean Void Void setsdklog(string tag) SDK 진행상황 Log 출력을설정한다. setterms(boolean isterms) 개인정보약관동의여부설정한다. (Default : false) isterms() 개인정보약관동의여부반환한다. AdListener.OnAdClickedListener 광고를클릭시실행될 Listener AdListener.OnAdFailedListener 광고다운로드실패시실행될 Listener AdListener.OnAdClosedListener 광고를종료할때실행될 Listener AdListener.OnAdLoadedListener 광고가정상적으로 Load 될때실행될 Listener AdListener.OnAdWillLoadListener 광고를호출하는시점에실행될 Listener 4.5 Class AdListener 4.5.1 Interface AdListener.OnAdClickedListener - Method Summary Void OnClickedAd() 광고를클릭하면실행된다. 4.5.2 Interface AdListener.OnAdFailedListener - Method Summary Void OnAdFailed(ADErrorCode error, String message) 광고다운로드실패시실행된다. 4.5.3 Interface AdListener.OnAdClosedListener - Method Summary Void OnAdClosed() 광고가닫힌경우실행된다. 4.5.4 Interface AdListener.OnAdLoadedListener - Method Summary Void OnAdLoaded() 광고가정상적으로 Load 될때실행된다. 24 / 25
4.5.5 Interface AdListener.OnAdWillLoadListener - Method Summary OnAdWillLoad() 광고를호출하면실행된다. 5. Enum ADErrorCode 광고요청실패시, AdListener.OnAdFailedListener.OnAdFailed() 메서드첫번째인자로전달된다. 에러에대한대응을하고싶다면, AdListener.OnAdFailedListener 를구현해 AdListener 객체의 OnAdFailedListener () 메서드로설정하면된다. 자세한에러코드에대한설명은아래와같다. NO_AD 광고가없는경우발생 PERMISSION_DENIED_ERROR 필수권한을추가하지않은경우발생. 이경우 AndroidManifest.xml 에필수권한을설정해 주면된다. INVALID_AD_LAYOUT 광고영역이없는경우발생 INVALID_AD_LAYOUT_SMAILL 광고영역이기준보다경우발생 INVALID_CLIENT_ID cid가유효하지않은경우발생 INVALID_CLIENT_ID_OR_PACKAGENAME 유효하지않는 Client ID 또는패키지명 INVALID_PACKAGENAME 패키지명이유효하지않은경우발생 INVALID_AD_TYPE 광고타입이유효하지않은경우발생 INVALID_AD_URL 광고 Url이유효하지않는경우발생 INVALID_CLINET_ID_OR_ UNSERVICEABLE_SDK_VERSION 유효하지않는 Client ID 또는지원하지않는 SDK Version NETWORK_ERROR 네트워크오류 CONNECTION_ERROR 연결오류 LOAD_AD_ERROR 광고로딩오류 SHOW_AD_ERROR 광고노출오류 ACTIVITIES_IS_NOT_VAILD Activitity가유효하지않은경우발생 INVALID_ANDROID_VERSION 지원하지않는안드로이드버전 INVALID_CONTEXT 유효하지않는 Context 25 / 25