Vungle로 시작하기 - iOS SDK(Swift)

이 문서는 Swift를 이용하는 기본 샘플 앱과 Vungle의 iOS SDK를 빠른 연동 방법을 설명합니다. 여기에 나오는 소스 코드는 공개 GitHub 저장소에서 찾을 수 있습니다.

 

시작하기 전에 주의할 사항...

  • Vungle iOS SDK는 iOS 6 이상만 지원합니다.
  • 통합을 하기 위해서는 Vungle 계정이 필요합니다. 아직 계정이 없다면, 여기에서 만드세요.
  • 아직 계정에 앱을 추가하지 않으셨다면, 지금 대시보드로 가셔서 귀하의 계정에 앱을 추가하세요. 이렇게 하셔야 앱 ID를 받아 Vungle SDK와 앱에 추가할 수 있습니다. 앱 페이지에 빨간색으로 표시되어있습니다.
 

이제 시작해 볼까요. 일단 시작하려면 5단계가 필요합니다.

 

1. Xcode 프로젝트에 Vungle 프레임워크 추가

아래 샘플코드에 연결하는 Vungle iOS SDK 는 Vungle dashboard 에서 다운받아야 합니다.

압축을 풀고 VungleSDK.embeddedframework/를 귀하의 프로젝트 디렉토리에 복사합니다. 그런 다음, Xcode(프레임워크)에 드래그 앤 드롭하여 귀하의 프로젝트에 링크되도록 하세요.

VungleSDK.embeddedframework 폴더는 레퍼런스(파란 폴더)가 아닌 그룹(노란 폴더)으로 추가되어야 합니다.

 

2. 기타 필수 프레임워크 추가

Vungle SDK에서는 다른 기본 프레임워크가 귀하의 프로젝트에 링크되어야 합니다. 프로젝트를 클릭하여 다음으로 가세요.

General > Linked Frameworks and Libraries

대부분의 이런 프레임워크들은 Xcode 프로젝트의 기본값이기 때문에 이미 포함되어 있습니다. 하지만 아래에서 포함되어 있지 않은 항목은 꼭 추가해 주세요.

  • AdSupport.framework
  • AudioToolbox.framework
  • AVFoundation.framework
  • CFNetwork.framework
  • CoreGraphics.framework
  • CoreMedia.framework
  • Foundation.framework
  • libz.dylib
  • libsqlite3.dylib
  • MediaPlayer.framework
  • QuartzCore.framework
  • StoreKit.framework
  • SystemConfiguration.framework
  • UIKit.framework

또한 VungleSDK 프레임워크가 링크된 프레임워크와 라이브러리 밑에 있는지 확인하시는 게 좋습니다. 만약 전에 한 드래그 앤 드롭 단계에서 자동으로 링크가 걸리지 않았다면 수동으로 '+' 기호와 '기타 추가'를 눌러 추가하시면 됩니다.

3. -ObjC linker flag 추가

Build Settings 의 Linking 섹션에 있는 Other Linker Flags 에 -ObjC 를 추가하세요.

 

 

4. iOS 상태 바 제거

꼭 필요한 단계는 아니지만 제거하시길 권해드립니다. 상태 바가 없으면 Vungle 광고의 상호작용 및 프리젠테이션이 원활하게 수행되기 때문입니다. 상태 바를 없애려면, Info.pList를 열어 "컨트롤러 기반 상태 바 모양 보기" 키를 추가한 후 "아니오"로 설정하세요.

 

 

5. 앱 전송 보안 예외 추가(Application Transport Security Exception)

iOS9부터는(Xcode 7으로 빌드된), 앱으로 부터의 모든 네트워크 트래픽이 HTTPS를 통해 보안 통신이 되어야 합니다. 우리는 이에 관해 당신이 좀 더 자세히 내용을 확인할 수 있도록 당신의 앱이 iOS 9을 위해 필요한 것들을 준비 하였습니다. 당신이 벙글 SDK가 제대로 돌아가도록 하기 위해 해야 할 것은, 당신 프로젝트의 info.plist 에 AllowsArbitraryLoads 예외를 추가하는 것입니다.

 

.plist 파일을 열고 새 딕셔너리인 NSAppTransportSecurity를 추가합니다. 그리고 이 딕셔너리의 아이템으로 NSAllowsArbitraryLoads키와 YES 값을 넣습니다.

 

6. 브릿지 헤더 파일 만들기

  • 귀하의 프로젝트(File->New->File [Objective C for iOS])에 새로운 Objective C 파일을 만드세요.
  • Objective C와 Swift 사이에서 브릿지 헤더 파일을 만들려고 하는지 Xcode가 확인 요청을 합니다. 계속하여 이 명령을 수락하세요.

  • 새로운 Objective C 파일을 삭제하지만 ${YOURPROJ}-Bridging-Header.h 브릿지 헤더 파일은 유지합니다.
  • 브릿지 헤더 파일에서, #import <VungleSDK/VungleSDK.h>를 추가하여 Vungle을 가져오세요.

 

7. 코드 추가!

  • SDK 초기화 - 광고가 사용자를 위해 시간 내에 사전 캐싱(pre-caching)되도록 가능한 빨리 SDK를 초기화하는 것이 중요합니다. 저희 샘플 프로젝트(모든 iOS 프로젝트를 위해 권장)에서는 초기화 명령을 메인 AppDelegate에 있는didFinishLaunchingWithOptions 메소드에 추가합니다.

    AppDelegate.swift : didFinishLaunchingWithOptions:

    var appID = "Your AppID Here"
    var sdk = VungleSDK.sharedSDK()
    // start vungle publisher library
    sdk.startWithAppId(appID)

 

  • 뷰콘트롤러에서 광고 재생 - AppDelegate의 didFinishLaunchingWithOptions에서 이미 초기화된 SDK로, 다음의 간단한 코드를 현재 보여지고 있는 뷰 콘트롤러에서 호출하여 광고를 사용자에게 보여줄 수 있습니다.

  • TopViewController.swift
    var sdk = VungleSDK.sharedSDK()
    sdk.playAd(self, error: nil)
    

    NSError 매개 변수는 광고 프레젠테이션 도중 문제가 생겼을 경우 오류 정보를 포함하기 위해 업데이트됩니다.

 

고급 설정

Vungle iOS SDK의 고급 설정(사용자 정의, 이벤트 리스너 등)에 대한 세부정보를 원하시면, 고급 설정 가이드를 확인하세요. Swift 샘플앱에서 playAd options 의 예제를 보여줍니다.

또 다른 질문이 있으십니까? 문의 등록

댓글