Flutter 프로그래밍 앱에 광고 달기 , Admob

 

 

Flutter 프로그래밍 앱에 광고 달기  Native Ads, Admob 

프로그래밍 개발의 초기 목적은 다양할 수 있습니다. 시장에서 나의 앱의 경쟁력을 평가받아 본다든지, 아니면 처음부터 대박을 노리는 목적일 수 있습니다. 누구나 개발 시 목적과 꿈을 가지고 시작합니다. 그 많은 동기 중에 앱을 통하여 수익을 얻는 것만큼 확실할 동기 부여는 없을 듯합니다. 그래서 오늘은 앱 개발을 통해 어떻게 수익이 발생하는지 간단히 알아보고 실제 수익이 발생되는 Flutter  Native ads를 구현해 보도록 하겠습니다.

구현예제

flutter-Native-Ads-Admob

유료앱

앱 가격 

앱에 가격을 측정하여 스토어에 출시합니다. 요즘은 무료 앱들의 품질이 우수하기 때문에 이 방법으로 경쟁력을 얻기 힘듭니다. 하지만 전략적으로 이용해 볼 가치는 있습니다. 내용이 같은 두 가지 앱에 사용 제한을 두어 제한된 버전과 그렇지 않은 버전으로 출시하는 것입니다. 이것은 제한된 버전의 이용자들이 이용상 불편함을 느껴 제한 없는 유료버전 구매를 유도하는 방법입니다.  저의 경우 무료 버전에 전체광고와 네이티브 광고를 달아두고 유료 버전에는 광고를 제거하고 출시를 하였습니다. 

Flutter-Native-Ads-Admob-유료앱

인앱 상품 

주로 게임 앱에서 사용하는 방법이며, 콘텐츠의 제한을 제거하거나 강화할 수 있는 일회성 상품을 앱 내에서 판매하여 이익을 얻을 수 있습니다.

정기 결제 

보통 구독이라고 하며, 사용자에게 요금을 반복적으로 청구하는 서비스입니다. 앱 콘텐츠가 지속적이고 장기적인 가치를 사용자에게 전달 할 수 있다면 사용자들에게 정기 결제를 유도 할 수 있습니다. 

무료앱 (광고 수익)

Admob 기준으로 말씀드리겠습니다.  광고 형식에 따라 총 6가지 광고 단위가 있습니다. 

admob
admob

  • 배너 : 앱 레이아웃의 리부를 차지하는 사각형 광고, 일정시간 이후 자동 갱신
  • 전면 : 컨텐츠 전환이나 로딩 시점에 전체 화면에 광고 노출
  • 보상형 전면광고 : 전체 광고를 시청한 이용자에게 보상을 제공해주는 방식
  • 리워드 : 광고 시청을 선택한 이용자에게 보상제공 (보상형 전면광고와 달리 이요자가 광고 시청을 선택해야함) 
  • 네이티브 : 앱의 디지인과 분위기에 맞는 광고 형식이며 콘텐츠와 함께 노출
  • 앱열기 : 앱 열거나 앱으로 전환시 광고 노출 

Flutter 프로그래밍 Native Ad 소스코드

의존성 주입 

google_mobile_ads는 구글에서 공식적으로 지원하는 패키지이며 다른 광고 패키지에 비해 최적화와 이슈 대응이 빠릅니다. 해당 패키지를 이용하시길 권해드립니다.


AndroidManifest.xml 

android/app/src/main/AndroidManifest.xml 아래와 같이 meta-data 태크를 추가 합니다. 



admob App ID

위 value값은 구글 애드몹에 가입하여 앱 등록후 APP ID를 얻을 수 있습니다. 


google_admob_service.dart 

flutter widget에 광고 삽입을 위한 서비스를 생성해 줍니다. 개발자에 따라 구현 방법이 다를 수 있으니 아래 내용은 참고만 부탁드립니다. 

세가지 타입으로 초기화

  • createNativeAdSmall();
  • createNativeAdMedium();
  • createNativeAdLarge();

세가지 타입으로 UI구성 

  • showNativeAdSmall
  • showNativeAdLarge
  • showNativeAdMedium

전체소스코드 

사용법 

Flutter UI에 아래코드를 삽입하여 광고를 노출 시켜줄 수 있습니다. 

GoogleAdmobService.instance.showNativeAdSmall(Size(250, 80), color: Colors.white),

 

해당 글을 작성하다 보니 admob에 관련된 내용이 빠진것 같아 빠른시일내에 admob 등록 절차와 방법에 관해 포스팅 하도록 하겠습니다. 

개발자 여러분들에게 도움이 되셨기를 바랍니다. 

댓글