안드로이드 앱으로 수익을 창출하는 방법에는 여러가지 방법이 있습니다.


첫번째) 앱을 유료로 등록하여 판매하는 방법!


두번째) 광고 (전면광고, 배너광고, 리워드광고) 를 붙여 수익을 창출하는 방법!


세번째) 광고를 붙인 후 광고제거 인앱결제를 추가하여 수익을 창출하는 방법!


그중 이번에는 두번째 방법, 전면광고를 사용하는 방법에 대해서 알아보겠습니다.


build.gradle Module : app 단위에 다음 코드를 추가합니다.

(버전은 해당 게시글 작성일 2020.02.27 기준 최신버전 18.3.0 버전을 사용했습니다.) 

dependencies {

// 애드몹
implementation 'com.google.android.gms:play-services-ads:18.3.0'
}


AndroidManifest.xml에 다음 코드를 추가합니다.

<uses-permission android:name="android.permission.INTERNET" />

인터넷 사용 권한으로, 광고를 불러올 때 인터넷을 사용하기 때문에 필요합니다.



다음의 코드를 <application></application> 사이에 추가합니다.

<meta-data
android:name="com.google.android.gms.ads.AD_MANAGER_APP"
android:value="true" />

<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="@string/admob_app_id" />


res/values/strings.xml에 다음 코드를 추가합니다.

<string name="admob_app_id">애드몹 앱ID</string>
<string name="banner_ad_unit_id">애드몹 광고단위 ID</string>
<string name="banner_ad_unit_id_for_test">ca-app-pub-3940256099942544/1033173712</string>

"애드몹 앱 ID" 와 "애드몹 광고단위 ID" 에는 본인의 정보를 입력합니다.

테스트 광고단위 ID는 공통이기 때문에 수정하실 필요 없습니다.



이제 광고를 띄우고자 하는 Activity에 애드몹 객체를 선언합니다.

//애드몹
private InterstitialAd mInterstitialAd;


onCreate 선언, 시작과 동시에 다음의 코드를 입력합니다.

MobileAds.initialize(this, "애드몹 앱 ID");
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("애드몹 광고단위 ID");
mInterstitialAd.loadAd(new AdRequest.Builder().build());

여기서 애드몹 앱 ID와 애드몹 광고단위 ID에 직접 수치를 입력하셔도 되고, strings.xml에 선언한 admob_app_id, banner_ad_unit_id를 사용하셔도 됩니다.




mInterstitialAd.loadAd(new AdRequest.Builder().build()); 하단에 아래의 코드를 반드시 입력합니다.

mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
// Load the next interstitial.
mInterstitialAd.loadAd(new AdRequest.Builder().build());
}

});

전면광고가 실행되고 사용자에 의해 종료되면, 새로운 광고를 로드하는 코드로, 이 코드가 없으면 최초 한번 광고실행 이후 광고를 불러오지 않습니다.

반드시 입력해주세요!



그 후 본인이 광고를 불러오고자 하는 곳에 아래의 코드를 추가하시면 됩니다.

if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}


광고 불러오기가 완료되면(isLoaded()), 광고를 실행(show())시킵니다.




****************************************************************************************************************************************************************

주의사항! 


본인이 앱을 개발중에 있을때는 반드시 테스트 광고단위 ID를 사용하셔야 합니다.

출시를 위해 APK를 플레이스토어에 등록하기 이전에 실제 광고단위 ID로 수정하셔야 하며, 출시 이후에도 의도적으로 개발자가 광고를 클릭하거나

많은 횟수의 광고를 불러오게 되면 애드몹 아이디가 정지되는 일이 자주 발생합니다. 반드시 주의해주세요!

****************************************************************************************************************************************************************



전면광고는 배너광고와 달리 xml layout을 따로 설정할 필요가 없다는 장점이 있고, 배너광고에 비해 수익률이 높지만

사용자가 불쾌감을 느끼는 경우가 큽니다. (실제로 플레이스토어 리뷰를 보면 전면광고로 인한 1점 별점이 매우 많습니다.)


또한 절대적으로 배너광고에 비해 전면광고가 수익이 높다고 할 수도 없습니다.


화면을 오랫동안 지속해서 봐야하는 앱일 경우, 전면광고를 띄울 타이밍이 애매하기 떄문에 배너광고를 오랜시간 노출시키는것이 이득일 수도 있고,

화면이 복잡하거나 UI로 가득차있는 경우, 그 틈을 비집고 배너광고를 띄우면 사용자가 느끼기에 광고로 지저분한 느낌을 받을 수도 있습니다.




결국 광고에는 답이없습니다. 개발자 본인이 오랜 고민을 통해 가장 최적화된 방법을 찾으시길 바랍니다.