Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
minLevel1
maxLevel7
include(인앱 브라우저 구현)|(커스텀 런처 구현)|(커스텀 런처 설정)

인앱 브라우저 구현

BuzzAd iOS SDK에서 제공하는 browserViewController를 사용하여 인앱브라우저를 구현해야 합니다. 사용하지 않을 경우, 일부 광고가 정상적으로 동작하지 않을 수 있습니다.

...

Expand
titleSwift
Code Block
languageswift
class CustomBrowserViewController {
  private lazy var browserViewController: UIViewController = {
    BuzzAdBrowser.sharedInstance().browserViewController()
  }()
  
  override func viewDidLoad() {
    super.viewDidLoad()
    
    view.addSubview(browserViewController)
    browserViewController.didMove(toParent: self)
    
    ...
  }
}

커스텀 런처 구현

구현한 인앱 브라우저를 사용하는 커스텀 런처를 구현합니다. 커스텀 런처에서 광고와 컨텐츠에 따라 동작을 달리 할 수 있습니다. 컨텐츠의 sourceUrl은 URL 혹은 Universal Link 가 내려올 수 있습니다.

...

Expand
titleSwift
Code Block
languageswift
class BABCustomLauncher: NSObject, BABLauncher {
  func open(launchInfo: BABLaunchInfo) {
    open(launchInfo: launchInfo, delegate: nil)
  }
  
  func open(launchInfo: BABLaunchInfo, delegate: BABLauncherEventDelegate?) {
  
    // 광고 또는 컨텐츠인지 미리 판단하고 싶을 경우, 다음을 이용하여 확인
    if let ad = launchInfo.ad {
      // 광고
    } else if let article = launchInfo.article {
      // 컨텐츠
      let sourceUrl = article.sourceUrl
    }
  
    // Custom Browser 실행
    let vc = CustomBrowserViewController()
    rootViewController.present(vc, animtated: true, completion:nil)
  }
}

커스텀 런처 설정

BuzzAdBenefit에 구현한 커스텀 런처를 설정합니다.

...