ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Swift] admob 넣기, swift 광고 넣기, swift 배너 넣기 (framework not found FBLPromises 해결)
    SW/Swift 2020. 9. 8. 09:20

    들어가기 전

    Swift에 구글에서 제공해주는  admob광고를 넣는 방법입니다.
    이 글은  구글에서 제공해주는 튜토리얼을 거의 그대로 따라 했습니다.(설명이 잘 되어있음) 
    따라 하면서 안 되는 부분만 조금 다르게 하였습니다.(16번)

    링크 -> developer.google.admob 
     

    시작하기  |  iOS  |  Google Developers

    iOS 앱을 제작 중인 AdMob 게시자를 위한 모바일 광고 SDK입니다.

    developers.google.com

    따라하기

    1. 먼저 Project하나를 생성합니다.

    2. Terminal을 켠 후 생성한 Project의 폴더로 이동합니다.
    3. 그 후 pod init를 실행합니다. (pod 설치방법은 Google에 치면 많이 나옵니다.)

    4. (3) 번을 실행했다면, Prodfile이 생성되는데 이것을 수정합니다.

    5. use_modular_headers! 
    6. pod 'Google-Mobile-Ads-SDK'를 입력합니다.
    (저는 개발자 등록이 안되어 있기 때문에 use_frameworks! 을 사용하면 framework not found FBLPromises라는 애러가 발생합니다. 그래서 5번으로 대체했습니다. pod를 사용하면 외부 libary를 다운로드한다는데 개발자 등록이 안되어있으면 허용범위가 작아지나? 봅니다.)
    7. 저장

    8. pod install --repo-update 

    9. 다음과 같은 파일들이 생성됩니다.
    10. 저희가 만든 Project에도 Info.plist라는 파일이 생성됩니다.

    11. 열고, 마지막에
        <key>GADApplicationIdentifier</key>
        <string>ca-app-pub-3940256099942544~1458002511</string>
    추가합니다.
    (string에 둘러 싸여있는 번호는 구글에서 지원하는 Test용입니다. 실제로는 ID를 할당받아야 합니다.)
    12. 저장

    13. open Project_Name.xcworkspace 실행. 

    14. AppDelegate에 
              import GoogleMobileAds
              GADMobileAds.shareInstance().start(copletionHandler: nil)
        를. 위와 같이 추가

    15. ViewController에
            bannerView = GADBannerView(adSize: kGADAdSizeBanner)
            addBannerViewToView(bannerView)
            bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
            bannerView.rootViewController. = self
            bannerView.load(GADRequest()
    와 아래 function을 추가

         func addBannerViewToView(_ bannerView: GADBannerView) {
              bannerView.translatesAutoresizingMaskIntoConstraints = false
              view.addSubview(bannerView)
              view.addConstraints(
                [NSLayoutConstraint(item: bannerView,
                               attribute: .bottom,
                               relatedBy: .equal,
                               toItem: bottomLayoutGuide,
                               attribute: .top,
                               multiplier: 1,
                               constant: 0),
                 NSLayoutConstraint(item: bannerView,
                               attribute: .centerX,
                               relatedBy: .equal,
                               toItem: view,
                               attribute: .centerX,
                               multiplier: 1,
                               constant: 0)

           ])

        }
    을 추가.

    16. command + r로 실행

    결과

    코드 링크

    댓글

Designed by Tistory.