如何從admob每隔x次顯示一次插頁式廣告,用戶已死亡或每x次用戶執行類似按下按鈕?這就是我如何在我的GameScene上展示插頁式廣告,並通過簡單的if語句展示有限的廣告展示。在其他場景中顯示插頁式廣告 - Admob,SpriteKit,Swift
2
A
回答
2
這隻有在您擁有GoogleMobileAds.sdk並將googlemobileads模塊導入GameViewController,GameScene或GameOverScene時纔有效。
我將向您展示跨場廣告實施並通過程序限制廣告展示次數。
首先,在你GameViewController:
import GoogleMobileAds
class GameViewController: UIViewController, GADInterstitialDelegate {
var myAd = GADInterstitial()
override func viewDidLoad() {
super.viewDidLoad()
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(GameViewController.loadAndShow), name: "loadAndShow", object: nil)
}
你GameViewController底部創建兩個功能:
func loadAndShow() {
myAd = GADInterstitial()
let request = GADRequest()
myAd.setAdUnitID("ca-app-pub-3940256099942544/4411468910")
myAd.delegate = self
myAd.loadRequest(request)
}
func interstitialDidReceiveAd(ad: GADInterstitial!) {
if (self.myAd.isReady) {
myAd.presentFromRootViewController(self)
}
}
您與GameViewController完成。現在前往GameOverScene或GameScene,無論您需要什麼。
創建一個全局int變量:
var playCount = Int()
在你DidMoveToView說:
playCount = 1
這部分是有點混亂,有點,不是真的。轉到觸摸開始,並找到將按鈕添加到按鈕的位置。例如,一個resetGame按鈕重置場景。添加這裏,並增加playButton Int像這樣:
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
for touch in touches{
let location = touch.locationInNode(self)
if resetGame.containsPoint(location) {
restartScene()
playCount += 1
}
最後一步。這兩個功能添加到您希望在展示插頁式廣告場景的底部:
func displayAd() {
NSNotificationCenter.defaultCenter().postNotificationName("loadAndShow", object: nil)
}
func checkAd() {
if playCount % 4 == 0 {
displayAd()
}
}
}
現在,用戶按下復位按鈕,遊戲或死亡每第四次,插頁式廣告應該顯示。我希望這有幫助。
編輯:我忘了告訴你調用checkAd()函數。在玩家死亡的任何地方調用此函數。所以如果你有一個名爲death或者gameover的Bool變量在同一個地方調用它。例如..
if died == true {
checkAd()
}
0
import UIKit
import SpriteKit
import GoogleMobileAds
var playCount = Int()
class GameViewController: UIViewController, GADBannerViewDelegate {
@IBOutlet var banner: GADBannerView!
var myAd = GADInterstitial()
override func viewDidLoad() {
super.viewDidLoad()
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(GameViewController.loadAndShow), name: "loadAndShow", object: nil)
let scene = MainScene(size: CGSize(width: 1536, height: 2048))
// Configure the view.
let skView = self.view as! SKView
skView.showsFPS = false
skView.showsNodeCount = false
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = true
/* Set the scale mode to scale to fit the window */
scene.scaleMode = .AspectFill
skView.presentScene(scene)
banner.hidden = true
banner.delegate = self
banner.adUnitID = "ca-app-pub-8889875503423788/7902691359"
banner.rootViewController = self
banner.loadRequest(GADRequest())
}
func loadAndShow() {
myAd = GADInterstitial()
let request = GADRequest()
myAd.setAdUnitID("ca-app-pub-8889875503423788/7902691359")
myAd.delegate = self
myAd.loadRequest(request)
}
func interstitialDidReceiveAd(ad: GADInterstitial!) {
if (self.myAd.isReady) {
myAd.presentFromRootViewController(self)
}
}
func adViewDidReceiveAd(bannerView: GADBannerView!) {
banner.hidden = false
}
func adView(bannerView: GADBannerView!, didFailToReceiveAdWithError error: GADRequestError!) {
banner.hidden = true
}
override func shouldAutorotate() -> Bool {
return true
}
override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
if UIDevice.currentDevice().userInterfaceIdiom == .Phone {
return .AllButUpsideDown
} else {
return .All
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Release any cached data, images, etc that aren't in use.
}
override func prefersStatusBarHidden() -> Bool {
return true
}
}
相關問題
- 1. SpriteKit中的Admob插頁式廣告 - Swift 3
- 2. 在Swift中顯示AdMob廣告時發生場景變化
- 3. Admob:每次顯示插頁式廣告
- 4. iOS不顯示admob插頁式廣告
- 5. Admob插頁式廣告沒有顯示
- 6. 當GameOver顯示插頁式廣告後,場景返回到WelcomeScene
- 7. admob插頁式廣告presentFromRootViewController不顯示廣告
- 8. 插頁式廣告SpriteKit
- 9. Admob libgdx插頁式廣告
- 10. SpriteKit中的AdMob插頁式廣告遊戲
- 11. 在非活動類中顯示admob插頁式廣告
- 12. 無法在andengine中使用admob顯示插頁式廣告
- 13. 如何在Unity遊戲中顯示admob插頁式廣告和獎勵廣告?
- 14. 插頁式廣告不顯示admob插件的團結
- 15. 爲什麼admob插頁式廣告沒有在iOS上顯示?
- 16. Admob插頁式廣告在應用關閉後顯示
- 17. Admob在三次結束遊戲後顯示插頁式廣告
- 18. admob插頁式廣告在ios上不顯示?
- 19. AdMob插頁式廣告未在Android上顯示
- 20. 顯示通過AdMob廣告在離子插頁式廣告,每2分鐘
- 21. Swift&Admob:無廣告展示
- 22. AdMob橫幅廣告未顯示Swift 3
- 23. 如何釋放場景直至插頁式廣告被解散?
- 24. 爲什麼我的AdMob插頁式廣告只顯示一次?
- 25. 由於Admob插頁式廣告不會顯示?
- 26. 顯示無按鈕的AdMob插頁式廣告點擊ios
- 27. 顯示AdMob插頁式廣告,但無法點擊它
- 28. 如何顯示多個Admob插頁式廣告?
- 29. 切換活動時未顯示AdMob插頁式廣告(Android)
- 30. 如何顯示來自AdMob的插頁式廣告與AndEngine?
去上類GameViewController在那裏說的UIViewController,並添加GADInterstitialDelegate –
笑我無法相信我忘了聲明!哈哈Thankyou – Vic
你能編輯你的文章解釋如何回答這個問題? StackOverflow不鼓勵代碼轉儲:它們不是很有用,因爲它們不會教人們如何解決問題;他們只是鼓勵複製粘貼編碼。謝謝! –