SDK導入說明
須先行下載tvOS SDK檔案後,即進行解壓縮程序,可取得兩個Framework檔案,分別為iMFADTV.framework 、GoogleInteractiveMediaAds.Framework檔案,並完成以下前置步驟:
A.在本Pre Roll 廣告專案中
加入 iMFADTV.framework 、 GoogleInteractiveMediaAds.Framework
B.建立 Objective-C bridging header檔案
C.在 Build Settings 內 在Objective-C bridging header 中,匯入Objective-C bridging header檔案
D.在 Build Settings 內 Other Linker Flags 請填入 -all_load 與 -ObjC
E.修改info.plist
基本設定
iMFADTV Framework 加入方式
在TARGETS-開啟 General
分頁下的 Frameworks, Libraries, and Embedded Content
下拉式選單,
然後用畫面上出現的 +
按鈕加入。
新增橋接檔案
必須先新增橋接檔案,而該檔案須遵守既定的命名規則。
ProjectName
+ -Bridging-Header
= ProjectName-Bridging-Header.h
設定橋接檔案
在專案設定選項中的 Build Settings下的Objective-C Bridging Header 加入橋接檔案的路徑
e.g. 我的專案名稱為 Swift-OCframework
$(SRCROOT)/Swift-OCframework/Swift-OCframework-Bridging-Header.h
在專案設定選項中的 Build Settings下的Defines Module 設定為Yes
import
在橋接檔案中,import iMFADTV.framework 。
#import <iMFADTV/iMFADTV.h>
GoogleInteractiveMediaAds Framework 加入方式
在TARGETS-開啟 General
分頁下的 Frameworks, Libraries, and Embedded Content
下拉式選單,
然後用畫面上出現的 +
按鈕加入。
修改Build Settings
在專案設定選項中的 Build Settings下的 Other Linker Flags 加入-ObjC
、 -all_load
修改info.plist
iOS9 App Transport Security Settings
NSAllowsArbitraryLoads
規則並設定為允許。請在 info.plist 中加入以下規則。1.加入步驟為 新增App Transport Security Settings
, 並在底下新增Allow Arbitrary Loads
,將其設為 YES
開始建立 Pre Roll 廣告
MFPreRollView 參數設定與說明
* 以下必須使用方法
設定 MFPreRollView
init(frame: CGRect)
Parameters
請輸入Pre Roll VAST 板位ID
func setZoneID(_ zoneID: String!)
Parameters
設定Pre Roll 廣告載入
func setPlayer()
使用 MFPreRollDelegate
weak var delegate: MFPreRollDelegate!
設定指向放置PreRoll廣告頁面
func getView(_ view: UIViewController!)
Parameters
* 以下為選擇使用方法
初始化時設定大小與UIView相同
init(view: UIView!)
Parameters
同時設定 Zonid and UIViewController
func setZoneID(zoneID: String!, get: UIViewController)
Parameters
關閉Mid-roll 影片
Usage
繼續播放Mid-roll 影片
Usage
取得/查看 版本&IMA版本
static func version() -> String
Usage
MFPreRollDelegate 說明
Pre-roll 廣告播完處理
func readyPlayVideo()
Pre-roll Vast影片錯誤處理
func onFailedToVast()
宣告及引入
以下程式碼會在 viewController的 viewDidLoad 初始化步驟中建立Pre Roll VAST 影音廣告。
import UIKit import iMFADTV class ViewController: UIViewController { var preroll:MFPreRollView? override func viewDidLoad() { super.viewDidLoad() preroll = MFPreRollView.init(frame: self.view.frame) preroll?.setZoneID("18379", get: self) preroll?.delegate = self; preroll?.setPlayer() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } extension ViewController:MFPreRollDelegate{ func readyPlayVideo() { print("PreRoll廣告結束,可進行後續動作..."); } func onFailedToVast() { print("PreRoll fail.") } }
取得結果
show date