การติดตั้งใช้งาน AFS สําหรับแอปบนอุปกรณ์เคลื่อนที่ (AFSMA) สําหรับ iOS

ข้อกำหนดเบื้องต้น

คู่มือการติดตั้งใช้งานนี้ถือว่าคุณมีความคุ้นเคยกับสิ่งต่อไปนี้

ภาพรวม

เอกสารนี้ระบุขั้นตอนในการผสานรวมโฆษณา AFS สำหรับแอปบนอุปกรณ์เคลื่อนที่ (AFSMA) ในแอปบนอุปกรณ์เคลื่อนที่ iOS บางครั้งโฆษณา AFSMA เรียกว่าแบบไดนามิก ความสูงมากขึ้น หากต้องการขอและแสดงโฆษณา AFSMA บน iOS คุณจะต้องทำดังนี้ ดำเนินการต่อไปนี้

GADSearchBannerView

  • คลาสนี้รับค่ามาจากคลาส UIView ของ iOS และแสดงโฆษณา AFSMA GADSearchBannerView ส่งคำขอสำหรับโฆษณาที่มี GADDynamicHeightSearchRequest และแสดงโฆษณาที่แสดงผล ควรเพิ่ม GADSearchBannerView ลงในมุมมองที่มีอยู่ของแอป โดยทั่วไปแล้วจะเป็นตัวควบคุมมุมมองหลักซึ่งจะเก็บมุมมองที่ เพิ่ม GADSearchBannerView ลงใน ควรกำหนดผู้รับมอบสิทธิ์ที่เหมาะสมไว้ที่ GADSearchBannerView
  • ต้องสร้างอินสแตนซ์ GADSearchBannerView ด้วย initWithAdSize:kGADAdSizeFluid เพื่อขอโฆษณา AFSMA กำลังสร้างอินสแตนซ์ GADSearchBannerView ที่มีคำขอ AFSMA เดิม initWithAdSize:kGADAdSizeBanner รายการ
  • ต้องตั้งค่าพร็อพเพอร์ตี้ adUnitID ในออบเจ็กต์นี้เป็นรหัสพร็อพเพอร์ตี้

GADDynamicHeightSearchRequest

  • ออบเจ็กต์นี้สรุปพารามิเตอร์คำขอโฆษณา ซึ่งเปรียบได้กับ พารามิเตอร์การตั้งค่าในออบเจ็กต์คำขอโฆษณา JavaScript (ตัวเลือกหน้าเว็บ, หน่วย ตัวเลือก) สำหรับเดสก์ท็อปและเว็บบนอุปกรณ์เคลื่อนที่ของ AFS

(void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)size

  • ระบบจะเรียก Callback นี้เมื่อคำขอโฆษณากลับมา เนื่องจากโฆษณาที่ส่งกลับ หน่วยโฆษณาอาจมีโฆษณาจำนวนหนึ่งที่มีส่วนขยายต่างกัน ขนาดที่แน่นอน ของหน่วยโฆษณาจะไม่ทราบเมื่อมีการสร้างคำขอโฆษณา เมื่อโฆษณาเริ่ม จำเป็นต้องอัปเดตมุมมองแบนเนอร์เพื่อรองรับขนาดใหม่ หน่วยโฆษณา โค้ดสำหรับปรับขนาด GADSearchBannerView ในมุมมองระดับบนสุด นำมาใช้ได้ที่นี่

ตัวอย่างการใช้งาน

ตัวอย่างด้านล่างแสดงให้เห็นการใช้ GBannerViewController เพื่อสร้าง GADSearchBannerView ในแบบมุมมองย่อยของ UIScrollView วิธีขอ AFSMA อย่างเหมาะสม โฆษณา ต้องสร้างอินสแตนซ์ GADSearchBannerView ด้วย initWithAdSize:kGADAdSizeFluid

// GBannerViewController.m implementation

@interface GBannerViewController () <GADAdSizeDelegate,
                                     GADBannerViewDelegate>

@property(nonatomic, strong) GADSearchBannerView *searchBannerView;

@property(nonatomic, strong) UIScrollView *scrollView;

@end

@implementation GBannerViewController

- (void)viewDidLoad {
  [super viewDidLoad];

  // Create the scroll view.
  ....
  ....

  // Create the banner.
  self.searchBannerView = [[GADSearchBannerView alloc] initWithAdSize:kGADAdSizeFluid];

  // Replace with your pub ID (e.g. ms-app-pub-9616389000213823).
  self.searchBannerView.adUnitID = @"ms-app-pub-################";

  // Set the initial location and size of the banner. The initial height
  // is set to 0 since we might not get an ad back.
  self.searchBannerView.frame = CGRectMake(0,
                                           0,
                                           CGRectGetWidth(self.view.bounds),
                                           0);
  self.searchBannerView.autoresizingMask = UIViewAutoresizingFlexibleWidth;

  // Set the delegate properties.
  self.searchBannerView.adSizeDelegate = self;
  self.searchBannerView.delegate = self;

  // Add the new search banner into the parent scrollView.
  [self.scrollView addSubview:self.searchBannerView];
  }

ภายใน GBannerViewController เดียวกัน ให้สร้าง GADDynamicHeightSearchRequest ซึ่งกำหนดพารามิเตอร์ของโฆษณาที่จะแสดงใน GADSearchView

// Create a search request and load the banner.
GADDynamicHeightSearchRequest *searchRequest = [[GADDynamicHeightSearchRequest alloc] init];

// Ad request options (set using GADDynamicHeightSearchRequest properties).
searchRequest.query = @"flowers";
searchRequest.numberOfAds = 2;

// Replace with the ID of a style from your custom search styles
[searchRequest setAdvancedOptionValue:@"0000000001"
                               forKey:@"styleId"];

ตัวเลือกอื่นๆ การปรับแต่ง ก็เป็นไปได้โดยการตั้งค่าคุณสมบัติเพิ่มเติมใน GADDynamicHeightSearchRequest ออบเจ็กต์

หากต้องการส่งคำขอโฆษณา ให้โทรหา loadRequest ด้วยหมายเลข GADDynamicHeightSearchRequest จากออบเจ็กต์ GADSearchBannerView:

[self.searchBannerView loadRequest:searchRequest];

หากต้องการให้มุมมองระดับบนสุดรองรับ GADSearchBannerView อย่างเหมาะสมเมื่อ ส่งคืนโฆษณา ต้องใช้ Callback ต่อไปนี้

// Callback to update the parent view height.
- (void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)size {
  // Update the banner view based on the ad size.
  CGRect newFrame = self.searchBannerView.frame;
  newFrame.size.height = size.size.height;
  self.searchBannerView.frame = newFrame;

  // Perform any additional logic needed due to banner view size change.
  ...
}

ตัวเลือกขั้นสูง

พารามิเตอร์คำขอโฆษณาส่วนใหญ่สามารถตั้งค่าผ่านพร็อพเพอร์ตี้ใน ออบเจ็กต์ GADDynamicHeightSearchRequest รายการ (ด้านบน searchRequest รายการ) พารามิเตอร์อื่นๆ จะต้องตั้งค่าโดยใช้คู่คีย์-ค่าด้วย setAdvancedOptionValue วิธีการ:

// Advanced customization options (set using key-value pair).

// Set a parameter (parameter_name) and its value (parameter_value).
[searchRequest setAdvancedOptionValue:@"parameter_value"
                               forKey:@"parameter_name"];

// Example: Show visible URL below description (domainLinkAboveDescription: false).
[searchRequest setAdvancedOptionValue:@"false"
                               forKey:@"domainLinkAboveDescription"];

ดูรายการพารามิเตอร์ทั้งหมดที่ใช้ได้

การตรวจสอบข้อผิดพลาด

GADBannerViewDelegate มี Callback ที่จะช่วยคุณตรวจสอบข้อผิดพลาดดังนี้

- (void)adView:(GADBannerView *)bannerView didFailToReceiveAdWithError:(GADRequestError *)error {

  // This callback is triggered when the ad request fails.
  // Add code here to debug the error object to discover causes of failure
  NSLog(@"Ad call failed due to %@", error.userInfo[@"NSUnderlyingError"]);
}

หากคำขอโฆษณาไม่สำเร็จ คุณสามารถใช้ Callback นี้เพื่อจัดการข้อผิดพลาดได้อย่างเหมาะสม และตรวจสอบข้อผิดพลาดผ่านออบเจ็กต์ข้อผิดพลาด