등록일:2018-09-15 13:38:12 (0%) 작성자: 제목:AdMob 안드로이드 앱으로 수익을 창출하는 방법
이 자습서에서는 AdMob을 통합하는 방법에 대해 알아보고, 작성한 멋진 안드로이드 앱을 통해 수익을 창출할 수 있도록 하고, 누가 원하지 않는지 알아봅니다. AdMob은 시장에서 가장 큰 모바일 광고 플랫폼 중 하나이며 Google이 소유하고 있습니다.
유료 다운로드, 유료 구독, 인앱 구매 및 광고 표시를 통해 안드로이드에서 앱으로 수익을 창출하는 방법에는 몇 가지가 있습니다. 이들을 결합할 수 있지만 단일 모델을 선택하는 것이 좋습니다. 이 자습서에서는 광고를 게재하여 앱으로 수익을 창출하는 방법에 대해 알아봅니다.
이 자습서에서 만드는 광고의 종류는 배너, 삽입 광고 및 기본 고속 광고입니다. 각각에 대해 설명하고 응용 프로그램에서 구현하는 방법을 보여줄 것입니다. 그러나 그전에 먼저 모바일 광고 SDK를 통합하고 초기화하는 방법을 알아보겠습니다.
안드로이드 스튜디오 프로젝트 만들기
안드로이드 스튜디오에서 MainActivity라는 새 프로젝트를 만듭니다.
모바일 광고 SDK 포함하기
AdMob과 앱의 통합을 시작하려면 먼저 앱 모듈 build.gradle 파일에 모바일 광고 SDK를 포함해야 합니다.
SDK를 추가 한 후에 프로젝트를 동기화해야 인터넷에서 라이브러리를 응용 프로그램으로 가져올 수 있습니다.
모바일 광고 초기화
안드로이드 앱에 광고를 로드하기 전에 모바일 광고 SDK를 초기화해야 하므로 가능한 한 빨리 이작업을 수행하십시오. Application 클래스를 확장한 클래스를 만든 다음 해당 메서드가 응용 프로그램이 시작될 때 한 번만 호출되기 때문에 해당 클래스의 onCreate() 메서드에서 MobileAds SDK를 초기화합니다.
검사버튼삭제버튼이 활동은 SDK에서 제공합니다. 배너 광고에서 사용자가 광고를 클릭할 때 광고를 볼 수 있고, 삽입 광고의 경우 사용자가 클릭할 때 광고를 표시하는 데 유용합니다.
1. 배너 광고
배너 광고는 현재 표시되는 화면의 일부를 포함합니다. 즉, 앱의 모든 콘텐츠와 광고가 화면에 함께 표시됩니다. 이렇게 하면 삽입 광고와 달리 광고가 게재되는 동안 사용자가 앱을 계속 사용할 수 있기 때문에 사용자 환경이 개선됩니다. 잠깐만 기다려주십시오. 배너 광고는 텍스트 또는 이미지 일 수 있습니다.
배너 광고를 구현하는 방법을 살펴 보겠습니다.
레이아웃에 배너 광고 포함
AdView는 배너 광고가 포함된 맞춤 ViewGroup이므로 이 보기를 포함하도록 activity_banner_ad.xml 레이아웃 파일을 수정해야 합니다.
빌더를 사용하여 AdRequest의 인스턴스를 생성하여 광고를 요청했습니다. 그런 다음 addTestDevice() 메소드를 사용하여 장치 ID를 인수로 전달하여 테스트 광고를 장치에 수신합니다 (이 경우에는 에뮬레이터). 그런 다음 이 AdRequest 인스턴스를 가져 와서 백그라운드 스레드 (UI / 주 스레드를 차단하지 않도록)에 광고를로드하는 AdView 메소드 loadAd()를 마지막으로 호출했습니다.
광고 테스트
이 시점에서 프로젝트를 실행하고 그 결과를 볼 수 있습니다.
위의 스크린샷에서 테스트 배너 광고가 보기 아래에 표시되고 있음을 알 수 있습니다. 이제 광고를 클릭하여 상호 작용하십시오.
AdListener를 사용하여 광고 이벤트 수신하기
이제 광고에서 관찰할 수 있는 이벤트 또는 콜백을 살펴보겠습니다. 사용 가능한 이벤트는 다음과 같습니다.
onAdFailedToLoad(int errorCode) : 광고 요청이 실패하면 시작됩니다. 코드는 ERROR_CODE_NETWORK_ERROR, ERROR_CODE_INVALID_REQUEST, ERROR_CODE_NO_FILL 또는 ERROR_CODE_INTERNAL_ERROR 중 하나 일 수 있습니다.
// This method should be called in the parent Activity's onPause() method.
if(mAdView != null) {
mAdView.pause();
}
super.onPause();
}
@Override
publicvoidonResume() {
super.onResume();
// This method should be called in the parent Activity's onResume() method.
if(mAdView != null) {
mAdView.resume();
}
}
@Override
publicvoidonDestroy() {
// This method should be called in the parent Activity's onDestroy() method.
if(mAdView != null) {
mAdView.destroy();
}
super.onDestroy();
}
}
리스너를 추가 한 후 프로젝트를 다시 실행하고 광고와 상호 작용하십시오. 우리가 만든 건배를 보고 호출되는 이벤트를 관찰하십시오.
2. 삽입 광고
배너 광고를 표시하는 것이 얼마나 쉬운 지 알 수 있었습니다. 이제 삽입 광고를 만드는 방법에 대해 알아보겠습니다.
삽입 광고는 애플리케이션의 전체 화면을 다루는 광고로, 앱의 다른 보기를 표시할 공간이 없습니다 (곧 보게 되겠지만). 이 작업은 전체 화면을 차지하고 네트워크가 느린 경우 로드하는 데 시간이 걸리기 때문에 사용자를 괴롭히지 않도록 주의해야 합니다. 이상적으로 이러한 삽입 광고는 자연재해시 앱에 표시되어야 합니다 (예 : 사용자가 다른 작업의 중간에 있을 때가 아니라 게임의 레벨 사이에서.
위 코드에서 InterstitialAdActivity 클래스의 InterstitialAd 클래스 인스턴스를 선언하고 초기화했습니다. Google이 제공 한 인수를 유일한 인수로 setAdUnitId() 메서드에 전달하여 추가 단위 ID를 설정합니다.
배너 광고에서 했던 것처럼 광고의 이벤트를 수신하므로 ListLoaded() 및 onAdFailedToLoad(int i)에서 오버로드 된 메소드를 발생시키는 리스너를 설정합니다. 빌더를 사용하여 AdRequest 클래스의 인스턴스를 만든 다음 메서드 loadAd()를 호출하여 이 요청을 메소드의 인수로 전달합니다. 우리는 isLoaded() 메소드를 사용하여 광고가 로드된 시기를 결정한 다음 show() 메서드를 호출하여 최종적으로 표시합니다.
배너 광고와 마찬가지로 AdListener를 추가할 수도 있습니다.
광고 테스트
이 시점에서 우리는 앱을 실행하고 그 결과를 볼 수 있습니다.
위의 스크린 샷에서 테스트 삽입 광고가 게재되고 있음을 알 수 있습니다.
3. 네이티브 광고 익스프레스
네이티브 광고 익스프레스는 게시자에게 앱의 자연스러운 느낌에 맞게 광고의 디자인을 맞춤 설정할 수 있는 기능을 제공합니다. 이 맞춤 설정은 AdMob 계정에서 자신의 글꼴, 색상, 크기 등을 정의하는 CSS 템플릿을 정의하여 수행됩니다. 이미지, 설명 및 제목을 변경할 수는 없지만 광고주가 설정합니다.
아래에는 레이아웃 그룹에 ViewGroup 인 NativeExpressAdView가 포함되어 있습니다. 또한 android:layout_height 및 android:layout_width를 wrap_content로 정의합니다. ads:adSize는 "320x300"이며 Google에서 제공하는 NativeExpress 광고 단위 ID를 사용합니다 (데모 용).