#prebid.js #prebid
#prebid.js #предварительная ставка
Вопрос:
У меня возникла проблема при использовании запроса на выборку в рекламном блоке баннера. Код состояния всегда возвращает «Сервер предварительной заявки не вернул ставки» при локальном тестировании на симуляторе iOS.
Я перепутал, изменив некоторые настройки конфигурации, и получил другие сообщения с кодом состояния. Я просто хочу успешно получить заявку на проверку работоспособности и убедиться, что в настоящее время я не делаю ничего плохого.
func fetchBannerBid() {
guard let adView = self.adView, !isInterstitial else {
return
}
let chosenAdUnit : BannerAdUnit
if adUnitId == Constant.SEAppNexusBannerAdUnitID {
chosenAdUnit = BannerAdUnit(configId: Constant.SEAppNexusBannerConfigID, size: CGSize(width: 320, height: 50))
chosenAdUnit.pbAdSlot = Constant.SEAppNexusBannerAdUnitID
}
else {
chosenAdUnit = BannerAdUnit(configId: Constant.SEAppNexusMediumConfigID, size: CGSize(width: 320, height: 250))
chosenAdUnit.pbAdSlot = Constant.SEAppNexusMediumRectAdUnitID
}
// Do any additional setup after loading the view, typically from a nib.
chosenAdUnit.fetchDemand { [weak self] (resultCode: ResultCode, targetingDict: [String : String]?) in
guard let `self` = self else { return }
self.fetchStartDate = Date()
print("Testing appnexus: result code = (resultCode.name())")
if let fetchStartDate = self.fetchStartDate {
let loadTime = String(Date().timeIntervalSince(fetchStartDate))
self.delegate?.bidderDidFinish(name: self.name, keywordsToAdd: [], parsedBid: nil, loadTime: loadTime)
}
}
Ответ №1:
вы можете использовать
//pass AdServer object which will be modified internally
adUnit.fetchDemand(adObject:)
//you are responsible for setting targetingDict into AdServer object
adUnit.fetchDemand(resultCode: targetingDict:)
В любом случае у вас должен быть хотя бы какой-то результат от PrebidServer, чтобы передать его в объект AdServer