iOS için AFS Yerel Uygulaması

Google Mobile Ads SDK'sı özel arama stillerini de destekler. Uygulamanızda Google Mobile Ads SDK'sı kullanılıyorsa bunun yerine AFSMA SDK sürümünü kullanmanızı öneririz.

Ön koşullar

  • Xcode 8.0 veya sonraki bir sürümü kullanın
  • iOS 8.0 veya sonraki sürümleri hedefleyin
  • Geçerli bir yayıncı web mülkü kodu (ör. vert-ppa-test1-srp)
  • CocoaPods

AFS Yerel SDK'sını içe aktarın

CocoaPods

CocoaPods'u kullanarak Google-AFSNative SDK'sını bir iOS projesine aktarın. Projenizin Podfile dosyasını açın ve şu satırı uygulamanızın hedefine ekleyin:

pod 'Google-AFSNative'

Ardından komut satırından şunu çalıştırın:

pod install --repo-update

CocoaPods'u kullanmaya yeni başladıysanız Pod dosyaları oluşturma ve kullanma hakkında bilgi edinmek için resmi belgelerine göz atın.

Genel bakış

2.0.8 veya daha eski bir sürümden 4.0 ya da sonraki bir sürüme geçiyorsanız lütfen taşıma rehberimize bakın.

Bu belgede, AFS Yerel reklamlarını iOS mobil uygulamanıza entegre etme süreci açıklanmaktadır.

GANSearchAdController

  • GANSearchAdController oluşturucuya, yayıncının web mülkü kodu, istenen ayar kimliği ve ilişkili GANSearchAdControllerOptions nesnesi sağlanmalıdır.
  • Her loadAds() çağrısı, yeni bir arama yapıldığını belirtir ve mevcut reklam grubunun silinmesine ve geçersiz kılınmasına neden olur.
  • Reklam öğeleri GANAdView'da depolanır.
  • Reklamlar, GANAdView reklamına populateAdView yöntemiyle eklenir. Arayan, doldurulacak GANAdView öğesine ek olarak, reklamı benzersiz bir şekilde tanımlaması gereken rastgele bir dize olan adIdentifier de sağlar. API'de, aktarılan her adIdentifier'a belirli bir reklam atanır. Daha sonra, adKey gelecekte tekrar iletildiğinde aynı reklam döndürülür. Örneğin, populateAdView adIdentifier "keyA" ile ilk kez çağrılırsa adIdentifier olarak "keyA" iletildiği sırada populateAdView öğesine yapılan her bir sonraki çağrı aynı reklamın gösterilmesiyle sonuçlanır.

GANAdView

  • Bu, reklam öğesini içeren UIView'dur.
  • Bu görünümü, GANSearchAdController üzerindeki populateAdView yöntemini kullanarak bir reklamla doldurun.

GANSearchAdControllerOptions

  • Reklamların istenme ve görüntülenme davranışını belirtmek için bu nesneyi GANSearchAdController oluşturucuya iletin.

GANSearchAdRequest

  • Reklam isteği yapmak için GANSearchAdController örneğinde bu nesneyle loadAds yöntemini çağırın.

GANSearchAdControllerDelegate

  • Bu arayüzü uygulayın ve çeşitli durumlarda geri çağırmaları kaydetmek için GANSearchAdController API'sine sağlayın.

Örnek uygulama

Aşağıdaki örnekte, örnek ViewController içinde reklam göstermek için bir GANSearchAdController ve bir GANView oluşturulması gösterilmektedir.

// 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"];
  }
}
...