Я хочу добавить рекламу вознаграждения в свое приложение, когда пользователь посмотрит рекламное видео, я дам ему вознаграждение
то, что я пытаюсь сделать, это что-то вроде этого в viewdidload, которое я инициализирую следующим образом:
let rewardedVideo : GADRewardBasedVideoAd =
GADRewardBasedVideoAd.sharedInstance()
rewardedVideo.delegate = self
let request2 : GADRequest = GADRequest()
request.testDevices = [kGADSimulatorID, "id_device"]
rewardedVideo.load(request2, withAdUnitID: "id reward video from admob")
и позже в приложении, когда пользователь решит воспроизвести видеообъявления, я проверяю это:
if GADRewardBasedVideoAd.sharedInstance().isReady {
GADRewardBasedVideoAd.sharedInstance().present(fromRootViewController: self)
}
проблема в том, что GADRewardBasedVideoAd.sharedInstance().isReady всегда не готов
как я могу решить эту проблему, пожалуйста?
любая помощь будет оценена
___________________Редактировать
я добавил это
func rewardBasedVideoAd(_ rewardBasedVideoAd: GADRewardBasedVideoAd, didFailToLoadWithError error: Error?) {
print("error \(error)")
}
и я вижу ошибку: Ошибка запроса: нет рекламы для показа
я не знаю, может быть, я пропустил конфигурацию
--------------Редактировать
Решение, которое я использовал:
как предложил @Daniel Storm, мне нужно настроить сторонние рекламные сети для GADRewardBasedVideoAd, но когда я попытался подключить AdColony и Applovin к admob, это выдало мне ошибку, каким-то образом адаптер не подключен правильно, я, наконец, решил интегрировать chartboost независимо от admob, так что теперь у меня есть chartboost для вознаграждения за видео и admob для баннера и межстраничного контента.
я добавляю chartboost следующим образом:
Chartboost.start(withAppId: "appid configurad in https://dashboard.chartboost.com", appSignature: "signature in the same site", delegate: self)
Chartboost.cacheRewardedVideo(CBLocationMainMenu)
if(Chartboost.hasRewardedVideo(CBLocationMainMenu)){
Chartboost.showRewardedVideo(CBLocationMainMenu)