개인앱에 광고를 달아서 티끌을 모아봅시다! |
다른 광고 포스팅은 아래링크를 참고하시면 됩니다.
앱을 통한 수익구조는 여러 방향이 있지만, 저 같이 초보자들이 올리는 작은 개인 앱들은 많은 수익구조를 생각하기 어렵습니다. 그래도 페북 및 애드몹 말고도 여러 구조가 있지만 오늘은 애드몹 광고에 대해 알아보겠습니다. 이전 포스팅에서 언급한 [애드몹] 배너광고 달기 와 일부 내용이 겹칠 수 있습니다. 그래도 전면광고를 검색해서 오신 분들을 위해 모든 과정을 담도록 하겠습니다. |
1. 회원가입 & 앱추가
여기로 이동해 애드몹에 회원가입/로그인 과정을 거칩니다. 그리고 좌측 앱 - > 앱추가 버튼을 눌러 아래와 같은 화면에서 개발중이거나, 이미 출시한 앱의 내용을 작성하고 추가 합니다. |
2. 광고 단위 추가
다른 앱을 사용하시면서 이미 알고 계신분도 있으시겠지만 애드몹 광고는 배너 / 전면 / 네이티브 / 리워드 전면 4가지 종류가 있습니다. 4가지중 하나를 선택하시면 상세 정보를 입력하게 되는데 크게 조정할 것 없이 디폴트 값들로 진행하시면 될 것 같습니다. 더 자세한 정보가 필요하신 분들은 애드몹 공식 사이트를 이용해주세요. |
3. Google Repository 설치
애드몹을 사용하기 위해선 SDK Manager 에 Google Repository가 설치된 상태여야 합니다. Tool - > Android - > SDK Manager - > SDK Tools -> Google Repository |
4. 프로젝트 레벨 gradle 수정(2018.02.18 추가)
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
5. SDK 추가
gradle(App) 에 구글 애드몹을 사용하기 위한 sdk 를 추가합니다. 아래와 같이 google service 의 ads만 따로 명시한 이유는 구글 services의 sdk가 많은 내용을 담고 있기 때문에 해당 프로젝트에서 사용할 부분만 골라서 추가하는게 프로젝트가 클수록 용이합니다. |
compile 'com.google.android.gms:play-services-ads:10.0.1'
6. AndroidManifest.xml 수정
광고 또한 네트워크를 통해 불러 오기때문에 아래와 같은 권한 2가지를 설정해줘야합니다. 그리고 메타데이터와 구글 애드몹 엑티비티를 추가합니다. |
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="wony.makestroy">
...
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> |
<application
...
android:theme="@style/NoTitle">
</provider>
<activity android:name=".View.Activity.MainActivity">
<meta-data android:name="com.google.android.gms.version" |
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
...
<activity android:name="com.google.android.gms.ads.AdActivity" |
</application>
</manifest>
7. string.xml 수정
광고 단위 생성시 받은 광고 ID를 'id'대신 채워넣습니다. |
<resources>
<string name="app_name">MakeStroy</string>
<string name="ad_unit_id">id</string>
</resources>
8. 광고 초기화 및 호출
엑티비티가 많지는 않지만 싱글톤으로 여러 엑티비티에서 편하게 불러 올 수 있도록 작성해봤습니다. |
public class AdsFull {
private static InterstitialAd adFull;
private static AdsFull instance = null;
private static Context context;
public AdsFull(Context context) {
this.context = context;
}
public static AdsFull getInstance(Context context) {
if (instance == null) {
instance = new AdsFull(context);
adFull = new InterstitialAd(context);
setAds();
}
return instance;
}
private static void setAds() {
AdRequest adRequest = new AdRequest.Builder().build(); //새 광고요청
adFull = new InterstitialAd(context);
adFull.setAdUnitId(context.getResources().getString(R.string.ad_unit_id));
adFull.loadAd(adRequest); //요청한 광고를 load 합니다.
adFull.setAdListener(new AdListener() { //전면 광고의 상태를 확인하는 리스너 등록
@Override
public void onAdClosed() { //전면 광고가 열린 뒤에 닫혔을 때
AdRequest adRequest = new AdRequest.Builder().build(); //새 광고요청
adFull.loadAd(adRequest); //요청한 광고를 load 합니다.
}
});
}
public void show() {
if(isShowAds()){//조건부 메소드
if(!Common.isAds){
if (adFull == null)
setAds();
adFull.show();
}
}
}
}
9. 주의사항 (2017.11.20 추가)
애드몹 광고를 사용할때 구글에서 권장하는 가이드 라인을 따르지 않으면 광고가 노출되지 않거나 수익에 대한 불이익이 있을 수 있습니다. 그러므로 몇가지 권고사항을 추려서 말씀드립니다. |
앱이 실행된 바로 직후, 앱이 종료된 후에는 노출되면 안됩니다.
앱이 백그라운드에서 실행중일때는 노출되면 안됩니다.
어린이를 대상으로 하는 앱은 광고가 적합하지 않습니다.
페이지와 페이지 사이에 배치해야 합니다.
사용자 시선이 앱을 향해 있을때만 광고가 노출되어야 합니다.
앱 컨텐츠가 있을때만 광고가 노출되어야 합니다.
10. 리스너 (2017.11.28 추가 )
몇가지 이벤트를 체크할 수 있는 리스너를 제공합니다.
|
실질적으로 테스트를 거치지 않고 애드몹 공식 문서를 의역했습니다.
추가적인 자료를 원하시는 분은 링크에서 확인해주세요.
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
// Code to be executed when an ad finishes loading.
}
@Override
public void onAdFailedToLoad(int errorCode) {
// Code to be executed when an ad request fails.
}
@Override
public void onAdOpened() {
// Code to be executed when the ad is displayed.
}
@Override
public void onAdLeftApplication() {
// Code to be executed when the user has left the app.
}
@Override
public void onAdClosed() {
// Code to be executed when when the interstitial ad is closed.
}
});
이상으로 애드몹 전면 광고 달기에 대한 포스팅을 마칩니다.
문의사항 및 이의사항에 대해서는 댓글이나 방명록으로 남겨주시면 확인후 신속하게 처리하겠습니다.
감사합니다.
'안드로이드 > 자바' 카테고리의 다른 글
[안드로이드/Android] WebView 세팅 속성 (0) | 2017.10.29 |
---|---|
[안드로이드/Android] 설치된 어플 확인 (5) | 2017.09.27 |
[안드로이드/Android] 애드몹 배너 광고 달기 (5) | 2017.09.03 |
[안드로이드/Android] 페이스북 로그인 연동 (5) | 2017.08.31 |
[안드로이드/Android] 카카오톡 로그인 연동 (20) | 2017.08.25 |