REMON Android SDK GUIDE (SDK Version 1.4.1) 1 / 25

Similar documents
PUBLISHER SDK GUIDE 이문서는 DAUM 싞디케이션제휴당사자에한해제공되는자료로가이드라인을 포함한모든자료의지적재산권은주식회사다음커뮤니케이션이보유합니다. COPYRIGHT DAUM COMMUMNICATIONS. ALL RIGHTS RES

PUBLISHER SDK GUIDE 이문서는 DAUM 싞디케이션제휴당사자에한해제공되는자료로가이드라인을 포함한모든자료의지적재산권은주식회사다음커뮤니케이션이보유합니다. COPYRIGHT DAUM COMMUMNICATIONS. ALL RIGHTS RES

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

( )부록

PowerPoint 프레젠테이션

03장

[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID" android:title=" 항목제목 "/> </menu> public boolean oncreateoptionsmenu(menu menu) { getme

OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프

어댑터뷰

adlibr-android_4.x

Google Maps Android API v2

학습목표 메뉴를추가하는방법을이해하고실습할수있다. 프로그램의기본설정 (settings) 을정의하는방법을알고실습할수있다. 대화상자를여는방법을알고실습할수있다. 로그메시지로디버깅하는방법을이해한다. 디버거로디버깅하는방법을이해한다.

오핀 (OFIN) SDK Guide Fintech Mobile SDK Guide - Android V 1.0 OPPFLIB 1

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 -

01장

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

INAPP결제 API 가이드

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

9 차시고급위젯다루기 1 학습목표 날짜 / 시간과관련된위젯을배운다. 웹뷰를사용하여간단한웹브라우저기능을구현한다. 매니패스트파일의설정법을배운다. 2 확인해볼까? 3 날짜 / 시간위젯 1) 활동하기 활동개요

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

C# Programming Guide - Types

2 Application Name: Day10_yhg <LinearLayout android:layout_weight="3" > /> an

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

13ÀåÃß°¡ºÐ

Microsoft Word - src.doc

PowerPoint 프레젠테이션

1 개요 이가이드는 Cocos2d-x 엔진을사용하는안드로이드어플리케이션프로젝트에서아이지에이웍스의서비스를 이용하기위한플러그인가이드입니다. 기능 IGAWorks Cocos2d-x 플러그인이지원하는 IGAW 서비스는아래와같습니다. - 애드브릭스 - 애드팝콘 - 디스플레이애드

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

슬라이드 1

1부

Secure Programming Lecture1 : Introduction

슬라이드 1

Facebook API

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

[ 그림 7-1] 프로젝트 res 폴더 이미지뷰 [ 예제 7-1] 이미지뷰 1 <LinearLayout 2 ~~~~ 중간생략 ~~~~ 3 android:orientation="vertical" > 4 <ImageView

4S 1차년도 평가 발표자료

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

Microsoft PowerPoint - 4주차_Android_UI구현.ppt [호환 모드]

자바GUI실전프로그래밍2_장대원.PDF

01-OOPConcepts(2).PDF

1

비긴쿡-자바 00앞부속

09-interface.key

헬로, 안드로이드 11 주차 위치파악하기와감지하기 강대기동서대학교컴퓨터정보공학부

Android Master Key Vulnerability

안드로이드2_14

PowerPoint 프레젠테이션

자바 프로그래밍

슬라이드 1

JUNIT 실습및발표

Interstage5 SOAP서비스 설정 가이드

rosaec_workshop_talk

2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1 <LinearLayout xmlns:android=" 2 xmlns:tools="

gnu-lee-oop-kor-lec06-3-chap7

신림프로그래머_클린코드.key

Daum 카페

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1"); void method() 2"); void method1() public class Test 3"); args) A

Tad_가이드라인

PowerPoint 프레젠테이션

슬라이드 1

제8장 자바 GUI 프로그래밍 II

Spring Boot/JDBC JdbcTemplate/CRUD 예제

쉽게 풀어쓴 C 프로그래밍

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

rmi_박준용_final.PDF

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

학습목표 선언하여디자인을하는방법을이해하고, 실행할수있다. 시작화면을만드는방법과대체리소스를사용하는방법을이해하고실행할수있다. About 과같은상자를구현하고, 테마를적용하는법을이해하고실행할수있다.

PowerPoint Presentation

Microsoft PowerPoint - 14주차 강의자료

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

Multi Channel Analysis. Multi Channel Analytics :!! - (Ad network ) Report! -! -!. Valuepotion Multi Channel Analytics! (1) Install! (2) 3 (4 ~ 6 Page

헬로, 안드로이드 7 주차 멀티미디어 강대기동서대학교컴퓨터정보공학부

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

DocsPin_Korean.pages

슬라이드 1

PowerPoint Presentation

Windows 8에서 BioStar 1 설치하기

50_1953.pdf

ps

ps

ps

ps

ps

pdf

ps

책1.pdf

ps

슬라이드 1

슬라이드 1

PowerPoint 프레젠테이션

Microsoft Word - 김정훈

12-file.key

THE TITLE

SMART ZONE CAST ANDROID SDK 적용가이드 NIT

슬라이드 1

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

PowerPoint Presentation

슬라이드 1

Transcription:

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