बैनर विज्ञापन

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

बैनर विज्ञापन किसी ऐप्लिकेशन के लेआउट में, डिवाइस की स्क्रीन के सबसे ऊपरी या निचले हिस्से में रहते हैं. ये स्क्रीन पर तब दिखते हैं, जब उपयोगकर्ता ऐप्लिकेशन के साथ इंटरैक्ट कर रहे होते हैं और वे एक तय समय के बाद अपने-आप रीफ़्रेश कर सकते हैं. अगर आप मोबाइल विज्ञापन में नए हैं, तो शुरू करने के लिए यह एक बेहतरीन प्लैटफ़ॉर्म है. केस स्टडी.

आपको इस गाइड में, iOS ऐप्लिकेशन मेंAdMob से बैनर विज्ञापनों को इंटिग्रेट करने का तरीका बताया गया है. कोड स्निपेट और निर्देशों में, बैनर को सही तरीके से साइज़ देने और ज़्यादा संसाधनों के लिंक के बारे में जानकारी भी दी गई है.

ज़रूरी शर्तें

हमेशा टेस्ट विज्ञापनों की मदद से टेस्ट करें

अपने ऐप्लिकेशन बनाते और उनकी जांच करते समय पक्का करें कि आप लाइव और प्रोडक्शन विज्ञापनों के बजाय टेस्ट विज्ञापनों का इस्तेमाल करते हों. ऐसा नहीं करने पर, आपका खाता निलंबित किया जा सकता है.

टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका, iOS बैनर के लिए बने हमारे टेस्ट विज्ञापन यूनिट आईडी का इस्तेमाल करना है: ca-app-pub-3940256099942544/2934735716

इसे हर अनुरोध के लिए, टेस्ट विज्ञापनों को लौटाने के लिए खास तौर पर कॉन्फ़िगर किया गया है. साथ ही, आप कोडिंग, टेस्टिंग, और डीबग करने के दौरान अपने ऐप्लिकेशन में इसका इस्तेमाल कर सकते हैं. अपना ऐप्लिकेशन प्रकाशित करने से पहले आपको इसे अपने विज्ञापन यूनिट आईडी से बदलना होगा.

मोबाइल विज्ञापन SDK टूल के टेस्ट विज्ञापन कैसे काम करते हैं, इस बारे में ज़्यादा जानने के लिए टेस्ट विज्ञापन देखें.

GADBannerViewबनाएं

बैनर विज्ञापन, GADBannerView ऑब्जेक्ट में दिखाए जाते हैं. इसलिए, सबसे पहले बैनर विज्ञापनों को इंटिग्रेट करने की दिशा में, अपने व्यू हैरारकी (व्यू और व्यू ग्रुप के लेआउट का क्रम) में GADBannerView शामिल करना होगा. आम तौर पर, ऐसा इंटरफ़ेस बिल्डर या प्रोग्राम की मदद से किया जाता है.

इंटरफ़ेस बनाने वाला

किसी स्टैंडर्ड व्यू की तरह, स्टोरीबोर्ड या xib फ़ाइल में GADBannerView जोड़ा जा सकता है. इस तरीके का इस्तेमाल करते समय पक्का करें कि आप जो विज्ञापन साइज़ दिखाना चाहते हैं उससे मैच करने वाला चौड़ाई और ऊंचाई कंस्ट्रेंट जोड़ें. उदाहरण के लिए, बैनर दिखाते समय (320x50), चौड़ाई वाले कंस्ट्रेंट के लिए 320 पॉइंट, और ऊंचाई की सीमा को 50 पॉइंट का इस्तेमाल करें.

प्रोग्राम की मदद से

GADBannerView को सीधे तौर पर भी इंस्टैंशिएट किया जा सकता है. यहां एक GADBannerView बनाने का उदाहरण दिया गया है, जिसे 320x50 के बैनर साइज़ के साथ स्क्रीन के सुरक्षित इलाके में सबसे नीचे बीच में दिखाया गया है:

Swift

import GoogleMobileAds
import UIKit

class ViewController: UIViewController {

  var bannerView: GADBannerView!

  override func viewDidLoad() {
    super.viewDidLoad()
    
    // In this case, we instantiate the banner with desired ad size.
    bannerView = GADBannerView(adSize: GADAdSizeBanner)

    addBannerViewToView(bannerView)
  }

  func addBannerViewToView(_ bannerView: GADBannerView) {
    bannerView.translatesAutoresizingMaskIntoConstraints = false
    view.addSubview(bannerView)
    view.addConstraints(
      [NSLayoutConstraint(item: bannerView,
                          attribute: .bottom,
                          relatedBy: .equal,
                          toItem: bottomLayoutGuide,
                          attribute: .top,
                          multiplier: 1,
                          constant: 0),
       NSLayoutConstraint(item: bannerView,
                          attribute: .centerX,
                          relatedBy: .equal,
                          toItem: view,
                          attribute: .centerX,
                          multiplier: 1,
                          constant: 0)
      ])
   }
   
}

Objective-C

@import GoogleMobileAds;

@interface ViewController ()

@property(nonatomic, strong) GADBannerView *bannerView;

@end

@implementation ViewController

- (void)viewDidLoad {
  [super viewDidLoad];
  
  // In this case, we instantiate the banner with desired ad size.
  self.bannerView = [[GADBannerView alloc]
      initWithAdSize:GADAdSizeBanner];

  [self addBannerViewToView:self.bannerView];
}

- (void)addBannerViewToView:(UIView *)bannerView {
  bannerView.translatesAutoresizingMaskIntoConstraints = NO;
  [self.view addSubview:bannerView];
  [self.view addConstraints:@[
    [NSLayoutConstraint constraintWithItem:bannerView
                               attribute:NSLayoutAttributeBottom
                               relatedBy:NSLayoutRelationEqual
                                  toItem:self.bottomLayoutGuide
                               attribute:NSLayoutAttributeTop
                              multiplier:1
                                constant:0],
    [NSLayoutConstraint constraintWithItem:bannerView
                               attribute:NSLayoutAttributeCenterX
                               relatedBy:NSLayoutRelationEqual
                                  toItem:self.view
                               attribute:NSLayoutAttributeCenterX
                              multiplier:1
                                constant:0]
                                ]];
}
  


@end

ध्यान दें कि इस मामले में, हम चौड़ाई या ऊंचाई की सीमाएं नहीं देते. ऐसा इसलिए, क्योंकि दिए गए विज्ञापन का साइज़, व्यू को बड़ा करने के लिए स्वाभाविक कॉन्टेंट का साइज़ देता है.

अगर आपको स्थायी साइज़ का इस्तेमाल नहीं करना है, तो GADAdSizeFromCGSize का इस्तेमाल करके कस्टम साइज़ सेट किया जा सकता है. ज़्यादा जानकारी के लिए, बैनर साइज़ सेक्शन देखें.

GADBannerView प्रॉपर्टी कॉन्फ़िगर करें

विज्ञापनों को लोड करने और दिखाने के लिए, GADBannerView कुछ प्रॉपर्टी सेट करनी होंगी.

  • rootViewController - विज्ञापन पर क्लिक होने पर, ओवरले को दिखाने के लिए इस व्यू कंट्रोलर का इस्तेमाल किया जाता है. आम तौर पर, इसे ऐसे व्यू कंट्रोलर पर सेट किया जाना चाहिए जिसमें GADBannerView हो.
  • adUnitID - यह विज्ञापन यूनिट का वह आईडी है जिससे GADBannerView विज्ञापन लोड करते हैं.

यहां एक कोड का उदाहरण दिया गया है, जिसमें यूज़र इंटरफ़ेस (यूआई) कंट्रोलर के viewDidLoad तरीके में दो ज़रूरी प्रॉपर्टी को सेट करने का तरीका बताया गया है:

Swift

override func viewDidLoad() {
  super.viewDidLoad()
  ...

  bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
  bannerView.rootViewController = self
}

Objective-C

- (void)viewDidLoad {
  [super viewDidLoad];
  ...

  self.bannerView.adUnitID = @"ca-app-pub-3940256099942544/2934735716";
  self.bannerView.rootViewController = self;
}

विज्ञापन लोड करना

GADBannerView सेट होने और उसकी प्रॉपर्टी कॉन्फ़िगर हो जाने पर, विज्ञापन लोड करने का समय हो जाता है. ऐसा करने के लिए, loadRequest: को GADRequest ऑब्जेक्ट पर कॉल करें:

Swift

override func viewDidLoad() {
  super.viewDidLoad()
  ...

  bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
  bannerView.rootViewController = self
  bannerView.load(GADRequest())
}

Objective-C

- (void)viewDidLoad {
  [super viewDidLoad];
  ...

  self.bannerView.adUnitID = @"ca-app-pub-3940256099942544/2934735716";
  self.bannerView.rootViewController = self;
  [self.bannerView loadRequest:[GADRequest request]];
}

GADRequest विषय एक विज्ञापन अनुरोध के बारे में बताता है और इसमें टारगेटिंग की जानकारी जैसी चीज़ों के लिए प्रॉपर्टी शामिल होती हैं.

विज्ञापन इवेंट

GADBannerViewDelegate का इस्तेमाल करके, आप लाइफ़साइकल इवेंट सुन सकते हैं, जैसे कि कोई विज्ञापन कब बंद होता है या उपयोगकर्ता ऐप्लिकेशन कब छोड़ देता है.

बैनर इवेंट के लिए रजिस्टर करना

अगर आप बैनर विज्ञापन इवेंट के लिए रजिस्टर करना चाहते हैं, तो GADBannerView के लिए delegate प्रॉपर्टी को ऐसे ऑब्जेक्ट पर सेट करें जो GADBannerViewDelegate प्रोटोकॉल लागू करता है. आम तौर पर, बैनर विज्ञापनों को लागू करने वाली क्लास, डेलिगेट क्लास के तौर पर भी काम करती है. इस स्थिति में, delegate प्रॉपर्टी को self पर सेट किया जा सकता है.

Swift

import GoogleMobileAds
import UIKit

class ViewController: UIViewController, GADBannerViewDelegate {

  var bannerView: GADBannerView!

  override func viewDidLoad() {
    super.viewDidLoad()
    ...
    bannerView.delegate = self
  }
}

Objective-C

@import GoogleMobileAds;

@interface ViewController () <GADBannerViewDelegate>

@property(nonatomic, strong) GADBannerView *bannerView;

@end

@implementation ViewController

- (void)viewDidLoad {
  [super viewDidLoad];
  ...
  self.bannerView.delegate = self;
}

बैनर इवेंट लागू करना

GADBannerViewDelegate में सभी तरीकों को 'ज़रूरी नहीं' के तौर पर मार्क किया गया है, इसलिए आपको सिर्फ़ उन तरीकों को लागू करना होगा जिन्हें आप इस्तेमाल करना चाहते हैं. यह उदाहरण हर एक तरीके को लागू करता है और कंसोल में मैसेज लॉग करता है:

Swift

func bannerViewDidReceiveAd(_ bannerView: GADBannerView) {
  print("bannerViewDidReceiveAd")
}

func bannerView(_ bannerView: GADBannerView, didFailToReceiveAdWithError error: Error) {
  print("bannerView:didFailToReceiveAdWithError: \(error.localizedDescription)")
}

func bannerViewDidRecordImpression(_ bannerView: GADBannerView) {
  print("bannerViewDidRecordImpression")
}

func bannerViewWillPresentScreen(_ bannerView: GADBannerView) {
  print("bannerViewWillPresentScreen")
}

func bannerViewWillDismissScreen(_ bannerView: GADBannerView) {
  print("bannerViewWillDIsmissScreen")
}

func bannerViewDidDismissScreen(_ bannerView: GADBannerView) {
  print("bannerViewDidDismissScreen")
}

Objective-C

- (void)bannerViewDidReceiveAd:(GADBannerView *)bannerView {
  NSLog(@"bannerViewDidReceiveAd");
}

- (void)bannerView:(GADBannerView *)bannerView didFailToReceiveAdWithError:(NSError *)error {
  NSLog(@"bannerView:didFailToReceiveAdWithError: %@", [error localizedDescription]);
}

- (void)bannerViewDidRecordImpression:(GADBannerView *)bannerView {
  NSLog(@"bannerViewDidRecordImpression");
}

- (void)bannerViewWillPresentScreen:(GADBannerView *)bannerView {
  NSLog(@"bannerViewWillPresentScreen");
}

- (void)bannerViewWillDismissScreen:(GADBannerView *)bannerView {
  NSLog(@"bannerViewWillDismissScreen");
}

- (void)bannerViewDidDismissScreen:(GADBannerView *)bannerView {
  NSLog(@"bannerViewDidDismissScreen");
}

iOS एपीआई डेमो ऐप्लिकेशन में, बैनर डेलिगेट के तरीके लागू करने के लिए, विज्ञापन ग्रुप का उदाहरण देखें.

स्विफ़्ट ऑब्जेक्ट-C

उपयोग के उदाहरण

यहां विज्ञापन इवेंट के इन तरीकों के कुछ उदाहरण दिए गए हैं.

कोई विज्ञापन मिलने के बाद व्यू हैरारकी (व्यू और व्यू ग्रुप के लेआउट का क्रम) में बैनर जोड़ना

विज्ञापन मिलने के बाद आप व्यू हैरारकी (व्यू और व्यू ग्रुप के लेआउट का क्रम) में GADBannerView जोड़ने में देरी कर सकते हैं. ऐसा करने के लिए, आप bannerViewDidReceiveAd: इवेंट सुन सकते हैं:

Swift

func bannerViewDidReceiveAd(_ bannerView: GADBannerView) {
  // Add banner to view and add constraints as above.
  addBannerViewToView(bannerView)
}

Objective-C

- (void)bannerViewDidReceiveAd:(GADBannerView *)bannerView {
  // Add bannerView to view and add constraints as above.
  [self addBannerViewToView:self.bannerView];
}

बैनर विज्ञापन को ऐनिमेट करना

बैनर इवेंट को ऐनिमेशन में बदलने के लिए, bannerViewDidReceiveAd: इवेंट का भी इस्तेमाल किया जा सकता है, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:

Swift

func bannerViewDidReceiveAd(_ bannerView: GADBannerView) {
  bannerView.alpha = 0
  UIView.animate(withDuration: 1, animations: {
    bannerView.alpha = 1
  })
}

Objective-C

- (void)bannerViewDidReceiveAd:(GADBannerView *)bannerView {
  bannerView.alpha = 0;
  [UIView animateWithDuration:1.0 animations:^{
    bannerView.alpha = 1;
  }];
}

ऐप्लिकेशन को रोकना और उसे फिर से शुरू करना

GADBannerViewDelegate प्रोटोकॉल में आपको इवेंट के बारे में सूचना देने के तरीके दिए गए हैं. उदाहरण के लिए, जब किसी क्लिक की वजह से ओवरले दिखता है या खारिज किया जाता है. अगर आपको यह पता लगाना है कि ये इवेंट विज्ञापनों की वजह से हुए थे या नहीं, तो इन GADBannerViewDelegate तरीकों के लिए रजिस्टर करें.

सभी विज्ञापन ओवरले या बाहरी ब्राउज़र शुरू करने के नतीजे देखने के लिए, आपका विज्ञापन UIViewController या UIApplication पर मिलते-जुलते तरीकों पर सुनने से बेहतर है. इस टेबल में, iOS के लिए इस्तेमाल किए जाने वाले ऐसे तरीके दिखाए गए हैं जिन्हें GADBannerViewDelegate तरीकों के साथ लागू किया जाता है:

GADबैनरViewDelegate तरीका iOS का तरीका
bannerViewWillPresentScreen: UIViewController's viewWillDisappear:
bannerViewWillDismissScreen: UIViewController's viewWillAppear:
bannerViewDidDismissScreen: UIViewController's viewDidAppear:

नीचे दी गई टेबल में स्टैंडर्ड बैनर साइज़ की सूची दी गई है.

पॉइंट में साइज़ (WxH) जानकारी सुपर थैंक्स की सुविधा कहां उपलब्ध है AdSize कॉन्सटेंट
320x50 बैनर फ़ोन और टैबलेट GADAdSizeBanner
320x100 बड़ा बैनर फ़ोन और टैबलेट GADAdSizeLargeBanner
300x250 IAB मीडियम रेक्टैंगल फ़ोन और टैबलेट GADAdSizeMediumRectangle
468x60 आईएबी का फ़ुल साइज़ बैनर टैबलेट GADAdSizeFullBanner
728x90 IAB लीडरबोर्ड टैबलेट GADAdSizeLeaderboard
दी गई चौड़ाई x अडैप्टिव ऊंचाई अडैप्टिव बैनर फ़ोन और टेबलेट लागू नहीं

कस्टम विज्ञापन आकार

अपनी पसंद के मुताबिक बैनर का साइज़ तय करने के लिए, GADAdSizeFromCGSize का इस्तेमाल करके अपना पसंद का साइज़ सेट करें, जैसा कि यहां दिखाया गया है:

Swift

let adSize = GADAdSizeFromCGSize(CGSize(width: 300, height: 50))

Objective-C

GADAdSize size = GADAdSizeFromCGSize(CGSizeMake(300, 50));

अन्य संसाधन

GitHub पर उदाहरण

  • बैनर विज्ञापनों का उदाहरण: Swift | Objective-C

  • बेहतर सुविधाओं का डेमो: Swift | Objective-C

  • GitHub पर बैनर UITableView का उदाहरण: Swift | Objective-C

मोबाइल विज्ञापन गैराज वीडियो ट्यूटोरियल

सफलता की कहानियां