我正在尝试将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()
我的应用程序在测试模板中处于测试模式并且正在真实设备上运行,但我只是获得非页内广告:如果未完成预取。等待......在控制台中。
为何不显示任何广告?
答案 0 :(得分:1)
暂且不说,这个解决方案的工作原因是因为预取方法。看来,当您调用广告时,Chartboost预取未按时完成,这会导致展示调用失败。
Chartboost确实有一个委托方法,可以在预取完成时为您提供全部清除,这可能值得一看: - (void)didPrefetchVideos;
Here's a link到页面的其余部分。
希望这会有所帮助。
答案 1 :(得分:0)
我认为您正试图快速展示AD。尝试延迟AD,为我解决了它。