iOS के लिए AFS का नेटिव लागू करने का तरीका

Google Mobile Ads SDK, कस्टम सर्च स्टाइल के साथ भी काम करता है. अगर आपका ऐप्लिकेशन पहले से Google Mobile Ads SDK का इस्तेमाल कर रहा है, तो हमारा सुझाव है कि आप AFSMA SDK टूल का वर्शन आज़माएं.

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

  • Xcode 8.0 या इसके बाद के वर्शन का इस्तेमाल करना
  • iOS 8.0 या उसके बाद के वर्शन को टारगेट करें
  • पब्लिशर का मान्य वेब प्रॉपर्टी कोड (जैसे, बिंदु-ppa-test1-srp)
  • CocoaPods

AFS नेटिव SDK टूल इंपोर्ट करें

CocoaPods

इसका इस्तेमाल करके किसी iOS प्रोजेक्ट में Google-AFSNative SDK टूल इंपोर्ट करें CocoaPods. अपने प्रोजेक्ट का Podfile पर जाएं और इस लाइन को अपने ऐप्लिकेशन के टारगेट में जोड़ें:

pod 'Google-AFSNative'

फिर कमांड लाइन से चलाएं:

pod install --repo-update

अगर आपने CocoaPods का पहले कभी इस्तेमाल नहीं किया है, तो जानकारी के लिए आधिकारिक दस्तावेज़ पॉडफ़ाइल बनाने और उन्हें इस्तेमाल करने का तरीका जानें.

खास जानकारी

अगर आप 2.0.8 या इससे पहले के वर्शन 4.0 या उससे बाद के वर्शन में अपग्रेड कर रहे हैं, तो कृपया डेटा को दूसरी जगह भेजने से जुड़ी गाइड देखें.

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

GANSearchAdController

  • GANSearchAdController कंस्ट्रक्टर को प्रकाशक का वेब प्रॉपर्टी कोड, मनचाहा सेटिंग आईडी, और उससे जुड़ी GANSearchAdControllerOptions ऑब्जेक्ट.
  • loadAds() पर किया जाने वाला हर कॉल एक नई खोज को दिखाता है और इससे मौजूदा खारिज किए जाने वाले और अमान्य होने वाले विज्ञापनों का सेट.
  • विज्ञापन क्रिएटिव, GANAdView में सेव किए जाते हैं.
  • populateAdView तरीके का इस्तेमाल करके विज्ञापनों को GANAdView में डाला जाता है. तय सीमा में भरी जाने वाली GANAdView के अलावा, कॉलर adIdentifier, जो एक आर्बिट्रेरी स्ट्रिंग है, जो विज्ञापन की खास पहचान करती है. एपीआई में, पास किए गए हर adIdentifier को एक खास विज्ञापन असाइन किया जाता है इंच इसके बाद, आने वाले समय में जब भी वह adKey दोबारा पास की जाएगी, तो वही विज्ञापन वापस किया गया. उदाहरण के लिए, अगर populateAdView को पहली बार adIdentifier "keyA", पास होने के दौरान populateAdView को बाद की हर एक कॉल "कुंजीए" क्योंकि adIdentifier से वही विज्ञापन दिखाया जाएगा.

GANAdView

  • यह वह UIView है जिसमें वह विज्ञापन क्रिएटिव होता है.
  • इस व्यू में populateAdView तरीके का इस्तेमाल करके, इसे एक विज्ञापन से भरें GANSearchAdController.

GANSearchAdControllerOptions

  • यह तय करने के लिए कि इस ऑब्जेक्ट को GANSearchAdController कंस्ट्रक्टर को पास करें विज्ञापनों का अनुरोध करने और उन्हें दिखाने के तरीके का व्यवहार.

GANSearchAdRequest

  • इस कोड का इस्तेमाल करके, GANSearchAdController इंस्टेंस पर loadAds तरीके को कॉल करें ऑब्जेक्ट है.

GANSearchAdControllerDelegate

  • इस इंटरफ़ेस को लागू करें और इसे GANSearchAdController को उपलब्ध कराएं, कई राज्यों के लिए कॉलबैक रजिस्टर करते हैं.

लागू करने का उदाहरण

नीचे दिए गए उदाहरण में, ViewController सैंपल में विज्ञापन दिखाने के लिए, GANSearchAdController और GANView बनाने का तरीका बताया गया है.

// SampleAppViewController.m implementation

#import <AFSNative/AFSNative.h>

@interface GBannerViewController () {
  // The Ad Controller used by the sample application.
  GANSearchAdController *_adController;

  // The Ad View to display the loaded ad.
  GANAdView *_adView;
}
// scrollView will be where we place our ads in this example.
@property(nonatomic, strong) UIScrollView *scrollView;
@end
...

- (void)viewDidLoad {
  [super viewDidLoad];

  // Create the scroll view.
  ...
  [self.view addSubview:scrollView];

  // Create a test button and link the ad request to its action.
  UIButton *loadBannerButton = [UIButton buttonWithType:UIButtonTypeCustom];
  ...
  [loadBannerButton addTarget:self
                       action:@selector(loadAd:)
             forControlEvents:UIControlEventTouchUpInside];
  [self.scrollView addSubview:loadBannerButton];

  // Construct the Ad Controller.
  GANSearchAdControllerOptions *options = [[GANSearchAdControllerOptions alloc] init];
  options.prefetchEnabled = YES;
  options.adType = GANSearchAdTypeSPA;
  options.adFetchCount = 3;

  _adController = [[GANSearchAdController alloc]
                     initWithPublisherID: @"your-client-id"
                                 styleID: @"your-settings-id"
                                 options: options
                                delegate: self];

  _adView = [_adController adView];
  [self.scrollView addSubview:_adView];
}

// Request ads when the test button is pressed.
- (void)loadAd:(id)sender {
  // Construct the Ad Request.
  GANSearchAdRequest *adRequest = [[GANSearchAdRequest alloc] init];
  adRequest.query =  @"some-query";
  // Start loading ads. Note that the loading is asynchronous.
  [_adController loadAds: adRequest];
}

// Insert ads into GANAdView if the request returns successfully.
- (void)searchAdController:(GANSearchAdController *)adController  
                didLoadAds:(NSInteger)numberOfAds {
  if (numberOfAds <= 0) {
    NSLog(@"No ads found on the server");
  } else {
    [_adController populateAdView:_adView identifier:@"demoAd"];
  }
}
...