본문 바로가기
개발/플러터(Flutter)

[플러터(Flutter)]- Admob으로 내가 만든 앱에 광고 넣어보기(1)_ 기본적인 셋팅을 진행하자

by 수인분당선 2024. 3. 19.
반응형

안녕하세요.

오늘 소개할 내용은 플러터를 통해 앱 내부 광고를 게시하는 방법에 관한 글입니다.

알림 못지않게 이 부분을 구현하는 것도 애를 많이 먹었어서 조금이라도 참고가 될 수 있도록 글을 작성해보고자 합니다

그럼 시작하도록 하겠습니다!


1. Admob 가입 및 생성

https://admob.google.com/intl/ko/home/

 

Google AdMob: 모바일 앱 수익 창출

인앱 광고를 사용하여 모바일 앱에서 더 많은 수익을 창출하고, 사용이 간편한 도구를 통해 유용한 분석 정보를 얻고 앱을 성장시켜 보세요.

admob.google.com

먼저 Admob를 가입합니다.  Admob은 광고를 통해 수익을 창출할 수 있도록 도와주는 시스템입니다.

 

가입을 진행하고 나면 Admob의 프로젝트 하나를 생성해줍시다.

이렇게 두가지 항목을 수집하고 있네요.

안드로이드, ios 각각에 맞게 생성해줍니다. 저는 플러터로 네이티브 앱을 제작할 것이기 때문에 두가지를 따로따로 생성하였습니다!

 

그렇게 생성하고 난 후, 광고 단위를 생성해줍니다.

위처럼 여러 개의 항목이 주어지고, 이 중에서 원하시는 광고 형식을 선택하면 됩니다.

저는 네이티브 고급광고를 선택해보도록 하겠습니다.

광고의 형식에 따라 코드가 달라질 수 있습니다. 이 부분은 다음 글에서 몇개 작성하고 참고 사이트도 첨부하여 자세히 다뤄보도록 하겠습니다.

절차를 따라 광고 단위를 생성하고 나면 이렇게 아이디 두 개가 주어집니다. (ios, android 두가지 모두 했다면 네개의 아이디) 

이 아이디들은 복사하여 따로 저장해두세요! 물론 다시 볼 수 있긴하니 없어졌다고 걱정은 하지 않으셔도 됩니다.

 

2. 패키지 다운로드

https://pub.dev/packages/google_mobile_ads

 

google_mobile_ads | Flutter package

Flutter plugin for Google Mobile Ads, supporting banner, interstitial (full-screen), rewarded and native ads

pub.dev

이제 구글 애드몹 라이브러리 패키지를 가져옵니다. 없어도 크게 상관없지만 셋팅에 도움이 되니 받아주는 것을 추천드립니다.

 

3. IOS / Android 기본 셋팅

IOS

 ios/Runner/Info.plist 로 들어가 코드를 추가해줍니다.

<key>GADApplicationIdentifier</key>
<string>ca-app-pub-3940256099942544~1458002511</string>
<key>SKAdNetworkItems</key>
<array>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>cstr6suwn9.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4fzdc2evr5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4pfyvq9l8r.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>2fnua5tdw4.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ydx93a7ass.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>5a6flpkh64.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>p78axxw29g.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>v72qych5uu.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ludvb6z3bs.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>cp8zw746q7.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3sh42y64q3.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>c6k4g5qg8m.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>s39g8k73mm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qy4746246.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>f38h382jlk.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>hs6bdukanm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>v4nxqhlyqp.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>wzmmz9fp6w.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>yclnxrl5pm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>t38b2kh725.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>7ug5zh24hu.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>gta9lk7p23.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>vutu7akeur.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>y5ghdn5j9k.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>n6fk4nfna4.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>v9wttpbfk9.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>n38lu8286q.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>47vhws6wlr.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>kbd757ywx3.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>9t245vhmpl.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>eh6m2bh4zr.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>a2p9lx4jpn.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>22mmun2rn5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4468km3ulz.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>2u9pt9hc89.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>8s468mfl3y.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>klf5c3l5u5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ppxm28t8ap.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ecpz2srf59.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>uw77j35x4d.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>pwa73g5rt2.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>mlmmfzh3r3.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>578prtvx9j.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>4dzt52r2t5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>e5fvkxwrpn.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>8c4e2ghe7u.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>zq492l623r.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3rd42ekr43.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qcr597p9d.skadnetwork</string>
  </dict>
</array>

Android

마찬가지로 android/app/src/main/AndroidManifest.xml 의 파일에 들어가고, 코드를 추가해줍니다.

<manifest>
  <application>
    <!-- meta-data부분인 이하 3줄을 입력하세요 -->
    <meta-data
        android:name="com.google.android.gms.ads.APPLICATION_ID"
        android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
  </application>
</manifest>

여기서 입력되는 애플리케이션 아이디는 생성한 애플리케이션명을 쓰고, 값에는 아까 저장해두었던 각 플랫폼모양이 왼쪽에 있던 키값! 을 넣어주시면 됩니다.

 

이제 셋팅이 끝났습니다! 다음 글부터 본격적으로 코드를 작성해보겠습니다.!!

아까 저장해둔 남은 키들은 코드를 작성하면서 사용될 예정이니 너무 걱정마세요!

 

추가로 참고한 사이트를 안내드립니다. google가 제공하는 공식 문서이니 추가적인 내용을 알고싶다면 참고하셔도 좋을 것 같습니다~!

https://developers.google.com/admob/ios/quick-start?hl=ko#import_the_mobile_ads_sdk

https://codelabs.developers.google.com/codelabs/admob-ads-in-flutter?hl=ko#2

 

잘못된 부분이나 개선할만한 내용이 있다면 얼마든지 댓글로 편하게 말씀 부탁드립니다!!

반응형

 

반응형