Chế độ cài đặt kiểu gốc
cho phép Google Ad Manager xử lý quá trình hiển thị quảng cáo gốc dựa trên kiểu gốc
mà bạn chỉ định trong sản phẩm. Trước tiên, hãy chỉ định kích thước và tiêu chí nhắm mục tiêu.
Sau đó, thêm HTML, CSS và JavaScript để xác định những quảng cáo có khả năng thích ứng và tạo ra hình ảnh hiển thị chất lượng trên tất cả các màn hình. Bạn không cần phải thực hiện bất kỳ thao tác hiển thị nào; Ad Manager sẽ tự động áp dụng kiểu gốc phù hợp cho đích đến. Kiểu gốc được triển khai giống như quảng cáo biểu ngữ, bằng cách sử dụng GAMBannerView. Bạn có thể sử dụng kiểu gốc với kích thước quảng cáo cố định được xác định trước hoặc kích thước quảng cáo linh hoạt được xác định trong thời gian chạy.
Điều kiện tiên quyết
- Google Mobile Ads SDK phiên bản 7.14.0 trở lên
Hướng dẫn này giả định bạn đã có một số kiến thức về cách sử dụng Google Mobile Ads SDK. Nếu chưa làm, hãy xem xét quy trình chạy thông qua Hướng dẫn bắt đầu của chúng tôi.
Kích thước cố định
Kiểu gốc có kích thước cố định cho phép bạn kiểm soát chiều rộng và chiều cao của quảng cáo gốc. Để đặt kích thước cố định, hãy làm theo các bước sau:
Tạo một mục hàng trong giao diện người dùng Ad Manager và chọn một trong các kích thước được xác định trước trong trình đơn thả xuống trường
Size.Trong Trình tạo giao diện, hãy đặt chiều rộng và chiều cao của
GAMBannerViewcho phù hợp với kích thước được xác định trước mà bạn đã chọn ở bước 1. Bạn có thể xem a danh sách các kích thước và hằng sốGADAdSizetương ứng trong phần Kích thước biểu ngữ.
Việc triển khai kiểu gốc có kích thước cố định cũng đơn giản như làm theo hướng dẫn trong Yêu cầu biểu ngữ đầu tiên, nhưng bạn sẽ có được sự linh hoạt và khả năng kiểm soát đối với HTML, CSS và JavaScript để quảng cáo biểu ngữ có giao diện gốc tự nhiên trong ứng dụng.
Kích thước linh hoạt
Trong một số trường hợp, kích thước cố định có thể không phù hợp. Ví dụ: bạn có thể muốn chiều rộng của quảng cáo khớp với nội dung của ứng dụng, nhưng cần chiều cao của quảng cáo tự động điều chỉnh cho phù hợp với nội dung của quảng cáo. Để xử lý trường hợp này,
bạn có thể chỉ định Fluid làm kích thước quảng cáo trong giao diện người dùng Ad Manager. Việc này
cho biết kích thước của quảng cáo được xác định trong thời gian chạy trong ứng dụng.
SDK cung cấp một hằng số GADAdSize đặc biệt,
kGADAdSizeFluid,
để xử lý trường hợp này. Chiều cao của kích thước quảng cáo linh hoạt được xác định một cách linh hoạt
dựa trên chiều rộng do nhà xuất bản xác định, cho phép
GAMBannerView,
điều chỉnh chiều cao cho phù hợp với chiều cao của mẫu quảng cáo.
Yêu cầu linh hoạt
Không giống như các định dạng quảng cáo khác, kích thước quảng cáo kGADAdSizeFluid không có chiều rộng được xác định trước, vì vậy, hãy nhớ đặt rõ ràng chiều rộng khung của biểu ngữ trong mã hoặc trong Trình tạo giao diện. Nếu không chỉ định chiều rộng, theo mặc định, SDK sẽ đặt chiều cao của biểu ngữ dựa trên chiều rộng đầy đủ của thiết bị.
Nếu bạn đưa ra yêu cầu nhiều kích thước bao gồm kGADAdSizeFluid, thì quảng cáo được trả về luôn được đặt bên trong một vùng chứa linh hoạt và hoạt động giống như một quảng cáo linh hoạt. Trong trường hợp một mẫu quảng cáo không linh hoạt được trả về trong vùng chứa linh hoạt này, SDK sẽ căn giữa quảng cáo trong vùng chứa để bạn không phải sửa đổi ràng buộc về chiều rộng mỗi khi một quảng cáo mới được trả về.
Việc triển khai để đưa ra yêu cầu linh hoạt một kích thước và nhiều kích thước là rất giống nhau; điểm khác biệt duy nhất là đối với yêu cầu nhiều kích thước, bạn đặt thuộc tính validAdSizes để chỉ định các kích thước quảng cáo hợp lệ cho yêu cầu quảng cáo:
Swift
bannerView.validAdSizes = [nsValue(for: AdSizeFluid), nsValue(for: AdSizeBanner)]
Objective-C
_bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
NSValueFromGADAdSize(kGADAdSizeBanner) ];
Dưới đây là giao diện của quá trình triển khai đầy đủ trong mã:
Swift
var bannerView: AdManagerBannerView!
override func viewDidLoad() {
super.viewDidLoad()
// Create the GAMBannerView and set its width to a width that makes sense for your
// app. In this example, the width is set to the width of the UIViewController's
// root view.
bannerView = AdManagerBannerView(adSize: AdSizeFluid)
var frameRect = bannerView.frame
frameRect.size.width = view.bounds.width
bannerView.frame = frameRect
// Uncomment this code for a multisize fluid request.
// bannerView.validAdSizes = [nsValue(for: AdSizeFluid), nsValue(for: AdSizeBanner)]
bannerView.adUnitID = "YOUR_AD_UNIT_ID"
bannerView.rootViewController = self
// Make the ad request.
bannerView.load(AdManagerRequest())
}
Objective-C
GAMBannerView *_bannerView;
- (void)viewDidLoad {
[super viewDidLoad];
// Create the GAMBannerView and set its width to a width that makes sense for your
// app. In this example, the width is set to the width of the UIViewController's
// root view.
_bannerView = [[GAMBannerView alloc] initWithAdSize:kGADAdSizeFluid];
CGRect frameRect = _bannerView.frame;
frameRect.size.width = CGRectGetWidth(self.view.bounds);
_bannerView.frame = frameRect;
// Uncomment this code for a multisize fluid request.
// _bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
// NSValueFromGADAdSize(kGADAdSizeBanner) ];
_bannerView.adUnitID = @"YOUR_AD_UNIT_ID";
_bannerView.rootViewController = self;
// Make the ad request.
[_bannerView loadRequest:[GAMRequest request]];
}
Để xem ví dụ về cách triển khai kích thước quảng cáo linh hoạt của Ad Manager, hãy tải ứng dụng iOS API minh họa xuống bằng Swift hoặc Objective-C.
Giao thức GADAdSizeDelegate
Bạn có thể muốn biết chiều cao của biểu ngữ trước khi kích thước quảng cáo của biểu ngữ thay đổi.
Lệnh gọi lại adView:willChangeAdSizeTo: sẽ thông báo cho đại diện của lệnh gọi lại này trước khi chế độ xem biểu ngữ thay đổi thành GADAdSize mới. Để được thông báo trước khi chế độ xem biểu ngữ thay đổi thành kích thước quảng cáo mới, lớp của bạn phải tuân thủ giao thức GADAdSizeDelegate.
Dưới đây là mẫu triển khai lệnh gọi lại adView:willChangeAdSizeTo: cho biết cách lấy chiều rộng và chiều cao mới của biểu ngữ:
Swift
// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
bannerView.adSizeDelegate = self
// MARK: - GADAdSizeDelegate
func adView(_ bannerView: BannerView, willChangeAdSizeTo adSize: AdSize) {
let height = adSize.size.height
let width = adSize.size.width
}
Objective-C
// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
_bannerView.adSizeDelegate = self;
#pragma mark - GADAdSizeDelegate
- (void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)adSize {
CGFloat height = adSize.size.height;
CGFloat width = adSize.size.width;
}