-
[Swift] admob 넣기, swift 광고 넣기, swift 배너 넣기 (framework not found FBLPromises 해결)SW/Swift 2020. 9. 8. 09:20
들어가기 전
Swift에 구글에서 제공해주는 admob광고를 넣는 방법입니다.
이 글은 구글에서 제공해주는 튜토리얼을 거의 그대로 따라 했습니다.(설명이 잘 되어있음)
따라 하면서 안 되는 부분만 조금 다르게 하였습니다.(16번)
링크 -> developer.google.admob따라하기
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로 실행결과
코드 링크