SDK8 Banner

出自TAMedia
於 2021年11月19日 (五) 03:09 由 imported>Wikiuser 所做的修訂
跳至導覽 跳至搜尋

回 SDK 8首頁

簡介

橫幅廣告只占螢幕的一小部分,使用者點擊後可以進入廣告頁面進行瀏覽,簡單的建立方式讓開發者輕鬆置入廣告。

Reference

Banner

串接準備

開始串接前請間確定已將 TAmedia SDK 整合至專案,並且完成初始化 SDK步驟,若您尚未完成請先參考開始使用教學完成相關設定。

Banners 大小種類

BannerDefault SmartBanner MediumRectangle LargeRectangle
320x50 portrait: full widthx50(phone), full widthx90(pad)
lanscape: full widthx32(phone), full widthx90(pad)
320x250 1200x627

加入 TADBannerView

TADBannerView 物件是 UIView 的 subclass, 呈現html5橫幅廣告 加入橫幅廣告的簡單七步驟, 建議在viewController裡執行

  • 匯入 TAMediaAdsFramework
  • 在 UIViewController裡宣告 TADBannerView 變數
  • 建立橫幅廣告,AD Size
  • 設定Unit ID
  • 設定 rootViewController
  • 請求廣告

BannerViewController

// 匯入 TAMedia SDK 定義
import TAMediaAdsFramework
 
@objc enum BannerType: Int {
    case BannerDefault
    case Banner320x250
    case Banner1200x627
    case SmartBanner
}

class BannerViewController: : UIViewController {
    // 宣告 TADBannerView 變數
    var banner: TADBannerView?
    requestAd()

    override func viewDidLoad() {
        super.viewDidLoad()
        requestAd()
    }

    func requestAd() {
        let request = TADRequest()
        request.showLog = true
        request.setLocationWithLatitude(25.02246916213678, longitude: 121.54834205241194, accuracy: 1)

        // 依Banner種類設定AD Size
        if bannerType == .BannerDefault {
            banner = TADBannerView.init(adSize: kTADAdSizeBanner, origin: CGPoint(x: 10, y: self.view.frame.size.height - 100))
            banner?.adUnitID = Constants.BannerAd320x50SlotID
        } else if bannerType == .Banner320x250 {
            banner = TADBannerView.init(adSize: kTADAdSizeMediumRectangle, origin: CGPoint(x: 10, y: self.view.frame.size.height - 300))
            banner?.adUnitID = Constants.BannerAd320x250SlotID
        } else if bannerType == .Banner1200x627 {
            banner = TADBannerView.init(adSize:  TADAdSize1200x627RatioBannerWithWidth(300), origin: CGPoint(x: 10, y: self.view.frame.size.height - 450))
            banner?.adUnitID = Constants.BannerAd1200x627SlotID
        } else if bannerType == .SmartBanner {
            banner = TADBannerView.init(adSize:  kTADAdSizeSmartBannerPortrait, origin: CGPoint(x: 0, y: self.view.frame.size.height - 100))
            banner?.adUnitID = Constants.BannerAd320x50SlotID
        }

        banner?.delegate = self
        banner?.adUnitID = slotId
        banner?.rootViewController = self
        banner?.turnOnMicrophone = false
        banner?.load(request)
    }
}

TADBannerViewDelegate

extension BannerViewController: TADBannerViewDelegate {
    // Ad Request Lifecycle Notifications

    // 廣告取得成功
    func adViewDidReceiveAd(_ view: TADBannerView!) {
    }

    // 廣告取得失敗
    func adView(_ view: TADBannerView!, didFailToReceiveAdWithError error: TADRequestError!) {
    }

    // 廣告即將被呈現之前被呼叫
    func adViewWillPresentScreen(_ adView: TADBannerView!) {
    }

    // 廣告即將被關閉之前被呼叫
    func adViewWillDismissScreen(_ adView: TADBannerView!) {
    }

    // 廣告被關閉之後被呼叫
    func adViewDidDismissScreen(_ adView: TADBannerView!) {
    }

    // 應用程式即將進入背景執行或中止運作前被呼叫
    func adViewWillLeaveApplication(_ adView: TADBannerView!) {
    }

}

回 SDK 8首頁