Я пытаюсь реализовать Admob native-banner в своем приложении. Я загружаю его с помощью этого кода:
let dfpBannerViewOptions = DFPBannerViewOptions()
dfpBannerViewOptions.appEventDelegate = self
dfpBannerViewOptions.adSizeDelegate = self
adLoader = GADAdLoader(adUnitID: "/6499/example/banner",
rootViewController: self,
adTypes: [GADAdLoaderAdType.dfpBanner], //here I will use native also this is only for testing
options: [dfpBannerViewOptions])
adLoader!.delegate = self
adLoader!.load(GADRequest())
Обратные вызовы, где я получил баннер, это:
extension ViewController: DFPBannerAdLoaderDelegate {
func validBannerSizes(for adLoader: GADAdLoader) -> [NSValue] {
return [NSValueFromGADAdSize(kGADAdSizeMediumRectangle),
NSValueFromGADAdSize(kGADAdSizeBanner),
NSValueFromGADAdSize(kGADAdSizeLargeBanner),
NSValueFromGADAdSize(GADAdSizeFromCGSize(CGSize(width: 336, height: 280)))]
}
func adLoader(_ adLoader: GADAdLoader, didReceive bannerView: DFPBannerView) {
self.adView1.addSubview(bannerView)
self.adView2.addSubview(bannerView)
}
}
Когда я добавляю баннер в «adView1», все в порядке, я вижу это без проблем, но когда я добавляю тот же баннер в другом представлении (adView2), тогда реклама из первого представления (adView1) будет удалена. Так можно ли показать один и тот же DFPBannerView в двух разных местах или это нужно сделать по-другому?