2016-03-03 107 views
4

我試圖獎勵用戶使用AdMob觀看視頻。雖然我無法找到任何關於這個問題的教程,我發現這兩個類的文檔中:iOS AdMob獎勵視頻

GADRewardBasedVideoAd

GADRewardBasedVideoAdDelegate

我已經成立了一個GADRewardBasedVideoAd的顯示具有以下視圖控制器代碼:

class MarketController: UIViewController, GADRewardBasedVideoAdDelegate { 


override func viewDidLoad() { 
    super.viewDidLoad() 

    GADRewardBasedVideoAd.sharedInstance().delegate = self 
    let request = GADRequest() 
    // Requests test ads on test devices. 
    request.testDevices = ["2077ef9a63d2b398840261c8221a0c9b"] 
    GADRewardBasedVideoAd.sharedInstance().loadRequest(request, withAdUnitID: "ca-app-pub-3940256099942544/4411468910") 
} 



// MARK: Daily Reward Button Delegate 

@IBAction func playVideoClicked() { 
    if GADRewardBasedVideoAd.sharedInstance().ready { 
     GADRewardBasedVideoAd.sharedInstance().presentFromRootViewController(self) 
    } 
} 


// MARK: GADRewardBasedVideoAdDelegate 

func rewardBasedVideoAdDidStartPlaying(rewardBasedVideoAd: GADRewardBasedVideoAd!) { 
    MediaPlayer.pauseBackgroundMusic() 
    print("Reward Video: Started") 
} 

func rewardBasedVideoAdDidClose(rewardBasedVideoAd: GADRewardBasedVideoAd!) { 
    MediaPlayer.startBackgroundMusic() 
    requestLoadAd() 
    print("Reward Video: Complete") 
} 

func rewardBasedVideoAdWillLeaveApplication(rewardBasedVideoAd: GADRewardBasedVideoAd!) { 
    requestLoadAd() 
    print("Reward Video: Will leave application") 
} 

} 

當我按下按鈕,觸發在「playVideoClicked」功能的代碼,我只看到一個普通的測試間隙(無視頻)和「rewardBasedVideoDidStartPlaying」 F聯合從未被調用。但是,關閉插頁式廣告時,會調用「rewardBasedVideoAdDidClose」函數。這是否意味着我做錯了什麼,或者AdMob是否顯示測試視頻?

此外,如何在AdMob開發人員控制檯中將此廣告配置爲獎勵視頻?

+1

感謝您的關注,但這些類與實驗性功能相關,不能/不應該立即使用。 – RedBrogdon

+0

剛剛找到這門課,我也有興趣使用它。你從哪裏得到這個信息,目前無法使用? Google文檔提供了有關實施的所有詳細信息:https://developers.google.com/admob/ios/api/protocol_g_a_d_reward_based_video_ad_delegate-p#overview – tomDev

+0

嗨,您是否找到了解決問題的方法? – gionti

回答

2

更改request.testDevices = ["2077ef9a63d2b398840261c8221a0c9b"]request.testDevices = [kGADSimulatorID]它應該工作。