Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios AdMob间隙错误“;请求错误:没有要显示的广告";_Ios_Swift_Admob - Fatal编程技术网

Ios AdMob间隙错误“;请求错误:没有要显示的广告";

Ios AdMob间隙错误“;请求错误:没有要显示的广告";,ios,swift,admob,Ios,Swift,Admob,我正在使用Swift2和Xcode7开发一个iOS应用程序。我正在尝试实现AdMob,但它不显示我的插入式广告 override func viewDidLoad() { super.viewDidLoad() _interstitial = createAndLoadInterstitial() } func createAndLoadInterstitial()->GADInterstitial { let interstitial = GADInterst

我正在使用Swift2和Xcode7开发一个iOS应用程序。我正在尝试实现AdMob,但它不显示我的插入式广告

override func viewDidLoad() {
    super.viewDidLoad()

    _interstitial = createAndLoadInterstitial()
}

func createAndLoadInterstitial()->GADInterstitial {
    let interstitial = GADInterstitial(adUnitID: "interstitial_ID")
    let gadRequest:GADRequest = GADRequest()
    gadRequest.testDevices = ["test device id"]
    interstitial.delegate = self
    interstitial?.loadRequest(gadRequest)

    return interstitial!
}

func interstitialDidReceiveAd(ad: GADInterstitial!) {
    _interstitial?.presentFromRootViewController(self)
}

func interstitial(ad: GADInterstitial!, didFailToReceiveAdWithError error: GADRequestError!) {
    print(error.localizedDescription)
}

func interstitialDidDismissScreen(ad: GADInterstitial!) {
    _interstitial = createAndLoadInterstitial()
}
我收到这个错误:

请求错误:没有要显示的广告


您应该有两个广告单元ID。一个用于您的
gadbanerview
,另一个用于您的
gadbanerview
。确保AdMob为您的Interstitual提供的Ad单元ID与他们提供的完全相同。更新至,当前为7.5.0。还可以考虑在特定的时间间隔或用户完成期望的动作之后调用<代码> PROTENFROOTVIEW控制器(SUBLY)<代码>。您现在的it设置方式将继续一个接一个地显示插页,因为您每次都会发送新插页请求,然后在收到广告后立即显示插页

import UIKit
import GoogleMobileAds

class ViewController: UIViewController, GADInterstitialDelegate {

    var myInterstitial : GADInterstitial?

    override func viewDidLoad() {
        super.viewDidLoad()
        myInterstitial = createAndLoadInterstitial()
    }

    func createAndLoadInterstitial()->GADInterstitial {
        let interstitial = GADInterstitial(adUnitID: "Your Ad Unit ID")
        interstitial.delegate = self
        interstitial?.loadRequest(GADRequest())
        return interstitial
    }

    @IBAction func someButton(sender: AnyObject) {
        myInterstitial?.presentFromRootViewController(self)
    }

    func interstitialDidReceiveAd(ad: GADInterstitial!) {
        print("interstitialDidReceiveAd")
    }

    func interstitial(ad: GADInterstitial!, didFailToReceiveAdWithError error: GADRequestError!) {
        print(error.localizedDescription)
    }

    func interstitialDidDismissScreen(ad: GADInterstitial!) {
        print("interstitialDidDismissScreen")
        myInterstitial = createAndLoadInterstitial()
    }

请求错误:没有要显示的广告。


表示您的请求已成功,但Admob此时没有要为您的设备显示的广告。确保始终显示广告的最佳方法是使用中介,以便未满足的请求通过另一个广告网络。Admob提供了很好的机制来实现这一点。

请求错误:没有要显示的广告,听起来Admob无法满足您的广告请求。再试一次。您是否收到任何其他错误/警告?您使用的是哪个版本的AdMob SDK?@DanielStorm我安装了AdMob和CocoaPods(pod‘Google Mobile Ads SDK’,“~>7.0”)。我再试了一次,但只收到了那个错误。不过GadbanerView通常会显示出来…谢谢你的重播。但是我已经为
GadbanerView
GadInterstitual
@MitsuhikoShimomura检查了两个广告单元ID,以确保Interstitual为您提供的广告单元ID与AdMob为您提供的完全相同。使用不存在/键入错误的广告单元ID将导致
请求错误:没有要显示的广告
错误。My AdMob console()。我从那里复制了单位ID,所以我肯定没有错。我注意到GAdMob在一段时间内不会为新成员提供广告,为什么我不知道?你可以从你的代码中确定用一个GADTestID替换你的广告id,我确信它会收到100%的广告,因为我对它进行了10多次测试,效果很好。谢谢你的回复。我从来没有想过。我很快就会实现这个功能!什么是“中介”以及它是如何实现的?中介是指您配置您的广告客户端以呈现来自多个广告网络的广告。像Admob这样的大多数广告客户端都可以通过保持客户端上的配置不变,并允许您通过其web应用程序配置广告网络列表来实现这一点。好主意可能是您可以将AppLovin、InMobi、Tapjoy、Leadbolt与Admob或其他提供商结合使用