अपने कोड में कुछ बदलाव करके, विज्ञापन अनुरोधों में नेटिव और बैनर विज्ञापनों को जोड़ा जा सकता है.
ज़रूरी शर्तें
- Google Mobile Ads SDK का 7.20.0 या उसके बाद का वर्शन
- शुरू करें गाइड को पूरा करें
विज्ञापन लोड करना
पसंद के मुताबिक रेंडर किए गए नेटिव विज्ञापन, GADAdLoader
ऑब्जेक्ट के ज़रिए लोड किए जाते हैं. GADAdLoader
ऑब्जेक्ट को विज्ञापन अनुरोध करने के लिए भी कॉन्फ़िगर किया जा सकता है, जिससे बैनर या नेटिव विज्ञापन दिख सकता है. GADAdLoader
ऑब्जेक्ट बनाते समय, GADAdLoaderAdTypeNative
जैसे नेटिव विज्ञापन टाइप के साथ-साथ adTypes
कलेक्शन पैरामीटर में GADAdLoaderAdTypeGAMBanner
जोड़ने से यह पता चलता है कि अनुरोध को पूरा करने के लिए, बैनर विज्ञापनों को नेटिव विज्ञापनों से मुकाबला करना चाहिए.
Swift
adLoader = GADAdLoader(adUnitID: "/21775744923/example/native-and-banner", rootViewController: self, adTypes: [.native, .gamBanner], options: [... ad loader options objects ...]) adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native-and-banner" rootViewController:rootViewController adTypes:@[ GADAdLoaderAdTypeNative, GADAdLoaderAdTypeGAMBanner ] options:@[ ... ad loader options objects ... ]]; self.adLoader.delegate = self;
GAMBannerAdLoaderDelegate
GADAdLoader
के ज़रिए बैनर विज्ञापनों का अनुरोध करते समय, विज्ञापन लोडर को GAMBannerAdLoaderDelegate
प्रोटोकॉल का पालन करना होगा. इस प्रोटोकॉल में एक मैसेज शामिल होता है, जो बैनर विज्ञापन लोड होने पर भेजा जाता है:
Swift
public func adLoader(_ adLoader: GADAdLoader, didReceive GAMBannerView: GAMBannerView)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didReceiveGAMBannerView:(GAMBannerView *)bannerView;
विज्ञापन लोडर के प्रतिनिधि को यह भी बताना होगा कि किन बैनर विज्ञापन साइज़ के लिए अनुरोध किया जाना चाहिए. इसके लिए, उसे नीचे दिए गए validBannerSizesForAdLoader
मैसेज का जवाब देना होगा.
Swift
public func validBannerSizes(for adLoader: GADAdLoader) -> [NSValue] { return [NSValueFromGADAdSize(GADAdSizeBanner), NSValueFromGADAdSize(GADAdSizeMediumRectangle), NSValueFromGADAdSize(GADAdSizeFromCGSize(CGSize(width: 120, height: 20)))] }
Objective-C
- (NSArray*)validBannerSizesForAdLoader:(GADAdLoader *)adLoader { return @[ @(GADAdSizeBanner), @(GADAdSizeMediumRectangle), @(GADAdSizeFromCGSize(CGSizeMake(120, 20))) ]; }
इंप्रेशन की मैन्युअल तरीके से गिनती
GADAdLoader
के ज़रिए लोड किए गए बैनर विज्ञापनों पर, मैन्युअल तरीके से इंप्रेशन की गिनती करने की सुविधा चालू करने के लिए, GADAdLoader
को शुरू करते समय enableManualImpressions
को YES
पर सेट करके, GAMBannerViewOptions
सेट करें.
Swift
let bannerViewOptions = GAMBannerViewOptions() bannerViewOptions.enableManualImpressions = true adLoader = GADAdLoader( adUnitID: "/21775744923/example/native-and-banner", rootViewController: self, adTypes: [.native, .gamBanner], options: [bannerViewOptions])
Objective-C
GAMBannerViewOptions *bannerViewOptions = [[GAMBannerViewOptions alloc] init]; bannerViewOptions.enableManualImpressions = YES; self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native-and-banner" rootViewController:self adTypes:@[ GADAdLoaderAdTypeNative, GADAdLoaderAdTypeGAMBanner ] options:@[ bannerViewOptions ]];
अगर कोई बैनर विज्ञापन लोड होता है, तो मैन्युअल तौर पर इंप्रेशन ट्रिगर करने के लिए, recordManualImpression
को कॉल किया जा सकता है. ऐसा तब किया जा सकता है, जब यह पता चल जाए कि विज्ञापन दिखाने का अनुरोध पूरा हो गया है और विज्ञापन स्क्रीन पर दिख रहा है:
Swift
bannerView.recordImpression()
Objective-C
[self.bannerView recordImpression];