2017-05-06 62 views
0

我在使用Swift中的iOS應用程序中顯示GADInterstitialAd。以下是我用來展示廣告的代碼。如何檢測用戶在Swift iOS中關閉插頁式廣告?

func showAd() { 
    if self.interstitialAd.isReady { 
     self.interstitialAd.present(fromRootViewController: self) 
    } 
} 

我在屏幕上運行一個計時器,我想暫停並在廣告關閉後恢復屏幕。任何人都可以告訴我如何實現這個?我檢查了interstitialWillDismissScreen,但似乎我需要讓我的自定義類從GADInterstitialDelegate派生。截至目前,我直接使用var interstitialAd: GADInterstitial!,我想知道是否有任何方法可以檢查廣告在屏幕上和屏幕之外的位置?

+0

你需要有你的班級代表GADInterstitialDelegate,沒有別的選擇與我的知識。你有沒有理由不這樣做? –

+1

在Daniel的評論如下後,我意識到了這一點。我認爲我誤解了這個概念,但在Daniel的下面的示例代碼後,它變得相當簡單。感謝您的評論@AmodGokhale – hellSigma

回答

1

您需要在您的班級中包含GADInterstitialDelegate。沒有其他方法可以檢查廣告是否在屏幕上。

class ViewController: UIViewController, GADInterstitialDelegate { 

    var interstitial: GADInterstitial! 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     // Setup interstitial here 
     // Set its delegate 
     interstitial.delegate = self 
    } 

    func interstitialWillPresentScreen(_ ad: GADInterstitial) { 
     print("Ad presented") 
    } 

    func interstitialDidDismissScreen(_ ad: GADInterstitial) { 
     // Send another GADRequest here 
     print("Ad dismissed") 
    } 
} 
+0

感謝您的回覆。這對我有效。 :) – hellSigma