使用Swift的Chartboost - 非页内广告:如果未完成则预取。等等......但没有广告?

时间:2016-08-12 14:02:54

标签: swift chartboost

我正在尝试将Swift中的Chartboost广告集成到我的项目中,并逐字地遵循教程:

https://answers.chartboost.com/hc/en-us/articles/205853276

所有内容都已导入,在App代理中我有:

Chartboost.startWithAppId(//stuff)
        Chartboost.setShouldRequestInterstitialsInFirstSession(false)
        Chartboost.cacheMoreApps(CBLocationHomeScreen)

//Chartboost

class func showChartboostAds()
{
    Chartboost.showInterstitial(CBLocationHomeScreen);
}

func didFailToLoadInterstitial(location :String!, withError error: CBLoadError)
{

}

func didDismissInterstitial(location :String! )
{
    if(location == CBLocationHomeScreen)
    {
        Chartboost.cacheInterstitial(CBLocationMainMenu)
    }
    else if(location == CBLocationMainMenu)
    {
        Chartboost.cacheInterstitial(CBLocationGameOver)
    }
    else if(location == CBLocationGameOver)
    {
        Chartboost.cacheInterstitial(CBLocationLevelComplete)
    }
    else if(location == CBLocationLevelComplete)
    {
        Chartboost.cacheInterstitial(CBLocationHomeScreen)
    }
}

然后在我的主视图controlleR:

AppDelegate.showChartboostAds()

我的应用程序在测试模板中处于测试模式并且正在真实设备上运行,但我只是获得非页内广告:如果未完成预取。等待......在控制台中。

为何不显示任何广告?

2 个答案:

答案 0 :(得分:1)

暂且不说,这个解决方案的工作原因是因为预取方法。看来,当您调用广告时,Chartboost预取未按时完成,这会导致展示调用失败。

Chartboost确实有一个委托方法,可以在预取完成时为您提供全部清除,这可能值得一看: - (void)didPrefetchVideos;

Here's a link到页面的其余部分。

希望这会有所帮助。

答案 1 :(得分:0)

我认为您正试图快速展示AD。尝试延迟AD,为我解决了它。