안녕하세요 ^^
이번에 제가 최근에 만든 4가지 앱 (자리 바꾸기, RGB 컬러바, HSB 컬러바, 스도쿠 풀이)에
Cauly 광고를 붙였어요
물론, AdMob 광고도 미리 붙였어요
하지만,
바로 수익이 나지 않고,
심사를 통과 해야 수익이 발생해요
(빨리 통과되면 좋겠어요...)
Cauly에서 제공하는 광고는
1. 배너 광고 (기본이죠...)
2. 전면광고
3. 네이티브 광고 (사용해 본적 없어요)
4. (모바일 앱의 경우) 종료 광고
등이 있어요
물론, 모바일 웹 광고도 있는데,
여기에는 플러그인도 없고,
자세한 사용법도 몰라서
사용하지 않으려고 해요
그러면, 이제
Cauly 광고를 붙이는 방법에 대해서
알아보도록 할게요
먼저, http://cauly.net에 들어가서
로그인을 해 주세요 (계정이 없으시면, 회원 가입을 먼저 해 주세요)
(로그인의 경우, 'Publisher'를 선택하시면, 로그인 영역이 나타나요)
이 글에서는 회원 가입이 되어 있다고 가정하고,
로그인을 하신 후,
오른쪽의 버튼을 눌러주세요
'매체 등록' 버튼을 누르시면,
위와 같이 떠요
위의 약관을 꼭 읽어보시고,
유형은 '안드로이드'를 선택 후,
아래에 앱 이름과 URL에는 패키지 이름을 입력 해 주세요
그리고 마켓은 대부분 'Google Play'일것으로 생각 돼요
또한, 테스트 목적의 경우, 패키지 이름을 비우셔도 돼요
모두 입력 하셨으면, 아래의 '등록'을 눌러주세요
등록이 끝나면, 빨갛게 가린 부분에 발급 ID가 나오는데요,
이 ID를 SDK 통합할 때 입력하시면 돼요
테스트 광고를 노출시키고 싶으면, 발급 ID 대신 'CAULY'를 입력하시면 돼요
이제 SDK를 다운로드 해 볼게요
아래의 'SDK 라이브러리 바로가기'를 누르시거나,
이 링크를 통해서 접속 할 수 있어요
접속 후, CaulyLib > CaulySDK-x.y.z.jar > View Raw를 누르시면 다운받을 수 있어요
그러면, 다운 받은 SDK를 통합을 해 볼텐데요,
참고로, SDK Reference는 라이브러리 접속 직후에,
아래로 내리시면 설명 되어 있어요
그리고, 처음에서 CaulyExample > src > ... 에 들어가시면,
샘플 프로젝트 소스를 볼 수 있어요
통합 순서는,
1. Android Studio 프로젝트에 SDK 파일 복사(jar 파일) 후 Gradle Sync
2. 코드 작성 및 발급 ID 적용
3. 테스트 및 Play 스토어 업로드
4. 업데이트 처리 완료 후 심사 요청
5. (심사 반려 시) 수정 후 재심사 요청
먼저, Android Studio 프로젝트에 SDK 파일을 옮겨야 해요
Project Root > app > libs 폴더에 넣어주세요
그리고, Root > app > build.gradle을 수정해야 해요
위와 같이 수정 해 주세요
그리고 위의 노란 부분에 있는 'Sync Now'를 눌러주세요
잠시만 기다리시고...
액티비티를 만들고,
매니페스트에 등록을 하시고,
광고 코드를 넣어 주시면 돼요
그 전에 !!
매니페스트의 액티비티 태그에
configChanges="keyboard|keyboardHidden|orientation|screenSize”
를 꼭! 넣어주세요
또 하나 꼭 넣을 것이 있다면,
바로!! 앱 권한인데요,
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
2개의 권한을 꼭!! 넣어주세요
가. 배너 광고
배너 광고를 넣는 방법은 XML과 Java 두가지가 있는데요,
여기에서는 Java 방식을 설명 하려고 해요
먼저, 레이아웃 XML 파일에 루트 레이아웃 ID를 지정 해주세요
왜냐하면, Java에서 루트 레이아웃을 참조해서 광고를 넣기 위해서예요
ID를 지정 하셨으면,
Java 소스로 이동해서,
광고를 넣을거예요
그런데, 소스 설명이 약~간 복잡해서,
주석이 있는 소스 파일을 첨부 하려고 해요
참고 하시면 될 것 같아요
그래도!!
아예 설명을 하지 않는 것 보다,
약~간의 설명이라도 해 드려야겠죠??
먼저, 배너 광고예요
여기에서는 각 광고 유형 별로 Method를 만들었어요
배너 광고를 붙이는 방법은,
1. Cauly Ad View 생성
2. Cauly Ad Info 생성 및 Cauly Ad View에 적용
3. Root 레이아웃에 삽입
인데요,
여기에서는 main_layout라는 ID를 가진 Root 레이아웃을 참조하여, (Method 1 행 : LinearLayout ~)
Cauly Ad Info를 생성했어요 (Method 2 행 : CaulyAdInfo ~)
여기에서 "CAULY"는 전에 나온 발급 ID를 입력 해주시고,
테스트 광고는 위와 같이 "CAULY"를 입력 해주세요
CaulyAdView를 생성 해주시고,(Method 3 행 : adView=new CaulyAdView ~)
그리고 생성한 Ad Info를 Ad View에 적용한 다음, (Method 4 행 : adView.setAdInfo ~)
Root 레이아웃에 붙이면 끝 ~~ (Method 5 행 : layout.addView ~)
여기에서 0의 의미는,
레이아웃의 가장 첫 뷰에 붙이는거예요
참고로,
Cauly Ad Info를 생성할 때,
여러가지 옵션들을 정해 줄 수 있어요
만약, 설정하지 않으면, 기본값으로 설정 되요
(GitHub 설명이 잘못 된건지, 저의 설명이 잘못된건지...)
1. 광고 전환 애니매이션 (Effect)
값 |
설명 | 비고 |
LeftSlide |
오른쪽 > 왼쪽 슬라이드 | 기본값 |
RightSlide |
왼쪽 > 오른쪽 슬라이드 | |
TopSlide |
아래 > 위 슬라이드 | |
BottomSlide |
위 > 아래 슬라이드 | |
FadeIn |
기존 광고가 사라지며 광고 변경 | |
Circle |
한 바퀴 회전하면서 광고 변경 | |
None |
효과 없음 |
2. 광고 갱신 간격 (reloadInterval) : 최소 20초 ~ 최대 120초 (기본값 = 30초)
3. 광고 자동 갱신 (dynamicReloadInterval) : true로 설정 시, 광고마다 갱신 간격 조정
4. 배너 광고 높이 (bannerHeight)
값 |
설명 | 비고 |
Proportional |
기기 해상도 비례 |
기본값 |
Fixed |
48dp |
|
Fixed_50 |
50dp |
5. 기본 배너 노출 여부 (enableDefaultBannerAd) : true이면 광고 수신 실패 시 기본 배너 노출
6. Thread 우선 순위 (threadPriority) : 1~10 (기본값 = 5)
7. 성별 (gender) : all (기본값, 전체), male(남), female(여)
8. 연령대 (age) : all (기본값, 전체), age10 ~ age50 (10 단위)
다음으로, 전면 광고예요
배너 광고보다 코드가 길~어 진 것을 알 수 있어요
전면 광고의 경우에는,
요청 후 리스너를 구현 해서 리스너 Method에서 전면 광고를 띄워야 해요
리스너 Method들은 위 사진을 참고 하세요 ^^
'onReceiveInterstitialAd'에서 전면 광고를 띄우면 돼요 ^^
'onReceiveInterstitalAd'의 Boolean 값은, 유료 & 무료 광고 여부가 담겨 있어요
그리고, 'onFailedToReceiveInterstitalAd'의 Int 에는 오류 코드, String에는 오류 메시지가 담겨 있어요
마지막으로, 종료 광고예요
이 부분은 종료 광고를 '초기화' 하는 부분 이예요
'Back' 키를 누르고 띄워야 해요
그래서!!
'Back' 키를 눌렸다는 것을 알아내기 위해서
Method를 하나 더 만들었어요
(사실은... 기본 종료 팝업까지 2개예요...)
만약, 네트워크가 원활하지 않는 등의 이유로
종료 광고를 불러 오지 못하는 경우를 대비해서
'closeAd.isModuleLoaded()'를 확인 해주세요
true = 종료 광고
false = 기본 종료 팝업
을 띄우시면 돼요
여기까지 안드로이드 앱에 Cauly 광고를 붙이는 방법을 간단히 살펴봤어요 ㅎㅎ
참고로,
Cauly는 누적 수익이 30,000원 이상이어야 인출 신청을 할 수 있어요
(저도, 여러분들도 언젠가는 도달 하겠죠??)
그럼 모두들 좋은 날 보내세요 ~~