Quảng cáo gốc là thành phần quảng cáo hiển thị cho người dùng thông qua các thành phần giao diện người dùng vốn có của nền tảng. Các quảng cáo này hiển thị bằng chính các lớp mà bạn đã dùng trong bảng phân cảnh và có thể được định dạng cho phù hợp với thiết kế hình ảnh của ứng dụng.
Khi một quảng cáo gốc tải, ứng dụng của bạn sẽ nhận được một đối tượng quảng cáo chứa các thành phần của quảng cáo đó, và ứng dụng (thay vì SDK quảng cáo trên thiết bị di động của Google) sẽ chịu trách nhiệm hiển thị các thành phần đó.
Nói chung, có hai phần để triển khai thành công quảng cáo gốc: Tải quảng cáo bằng cách sử dụng SDK, sau đó hiển thị nội dung quảng cáo trong ứng dụng của bạn.
Trang này cho biết cách sử dụng SDK để tải quảng cáo gốc.
Điều kiện tiên quyết
- Xem hết Hướng dẫn bắt đầu sử dụng.
Luôn kiểm tra bằng quảng cáo thử nghiệm
Khi tạo và thử nghiệm ứng dụng, hãy nhớ sử dụng quảng cáo thử nghiệm thay vì quảng cáo thực tế.
Cách dễ nhất để tải quảng cáo thử nghiệm là sử dụng mã đơn vị quảng cáo thử nghiệm dành riêng cho quảng cáo gốc trên iOS:
/6499/example/native
Mã này được định cấu hình đặc biệt để trả về quảng cáo thử nghiệm cho mọi yêu cầu và bạn có thể sử dụng mã này trong ứng dụng của mình khi lập trình, chạy thử nghiệm và gỡ lỗi. Bạn chỉ cần nhớ thay thế mã này bằng mã đơn vị quảng cáo của mình trước khi xuất bản ứng dụng.
Để biết thêm thông tin về cách hoạt động của quảng cáo thử nghiệm của SDK quảng cáo trên thiết bị di động của Google, hãy xem bài viết Quảng cáo thử nghiệm.
Tải quảng cáo
Quảng cáo gốc được tải bằng lớp
GADAdLoader
.
Lớp này sẽ gửi thông báo đến thực thể đại diện theo giao thức
GADAdLoaderDelegate
.
Ngoài định dạng quảng cáo gốc do hệ thống xác định, bạn cũng có thể tạo
các định dạng quảng cáo gốc tuỳ chỉnh
của riêng mình và có thể sử dụng cho quảng cáo gốc được bán trực tiếp. Các định dạng quảng cáo gốc tuỳ chỉnh cho phép bạn chuyển dữ liệu có cấu trúc tuỳ ý đến ứng dụng của mình. Các quảng cáo này do lớp GADCustomNativeAd
biểu thị.
Khởi chạy trình tải quảng cáo
Trước khi có thể tải quảng cáo, bạn phải khởi chạy trình tải quảng cáo.
Mã sau đây minh hoạ cách khởi chạy GADAdLoader
:
Swift
adLoader = GADAdLoader(adUnitID: "/6499/example/native",
rootViewController: self,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/6499/example/native"
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
Bạn cần có một mã đơn vị quảng cáo (có thể sử dụng mã thử nghiệm), các hằng số để chuyển vào mảng
adTypes
nhằm chỉ định các định dạng gốc mà bạn muốn yêu cầu và bất kỳ
tuỳ chọn nào bạn muốn đặt trong thông số options
. Bạn có thể tìm thấy danh sách các giá trị
có thể sử dụng cho thông số options
trong trang Đặt tùy chọn
quảng cáo gốc.
Mảng adTypes
phải chứa một hoặc nhiều hằng sốsau đây:
Triển khai thực thể đại diện của trình tải quảng cáo
Thực thể đại diện của trình tải quảng cáo cần triển khai các giao thức dành riêng cho loại quảng cáo của bạn.
Đối với quảng cáo gốc, giao thức
GADNativeAdLoaderDelegate
sẽ gửi một thông báo tới thực thể uỷ quyền khi quảng cáo gốc đã tải xong.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
Giao thức GADCustomNativeAdLoaderDelegate
bao gồm một thông báo sẽ được gửi tới
thực thể đại diện khi quảng cáo mẫu tùy chỉnh đã tải xong.
Swift
func adLoader(_ adLoader: GADAdLoader,
Receive customNativeAd: GADCustomNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;
Yêu cầu quảng cáo
Sau khi GADAdLoader
được khởi chạy, hãy gọi phương thức loadRequest:
để
yêu cầu quảng cáo:
Swift
adLoader.load(GAMRequest())
Objective-C
[self.adLoader loadRequest:[GAMRequest request]];
Phương thức
loadRequest:
trong
GADAdLoader
chấp nhận các đối tượng
GAMRequest
giống với đối tượng của quảng cáo biểu ngữ và quảng cáo xen kẽ. Bạn có thể sử dụng các đối tượng yêu cầu để thêm
thông tin nhắm mục tiêu, giống như cách bạn
làm với các loại quảng cáo khác.
Xác định thời điểm tải xong
Sau khi gọi loadRequest:
, ứng dụng có thể nhận được kết quả của yêu cầu đó bằng cách sử dụng các lệnh gọi tới:
adLoader:didFailToReceiveAdWithError:
trongGADAdLoaderDelegate
adLoader:didReceiveNativeAd:
trongGADNativeAdLoaderDelegate
Việc yêu cầu một quảng cáo sẽ tạo ra một lệnh gọi đến một trong những phương thức đó.
Xử lý các yêu cầu không thực hiện được
Các giao thức trên mở rộng giao thức GADAdLoaderDelegate
để xác định
thông báo sẽ được gửi khi quảng cáo không tải được.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
Nhận thông báo về các sự kiện quảng cáo gốc
Để nhận thông báo về các sự kiện liên quan đến lượt tương tác với quảng cáo gốc, hãy đặt thuộc tính uỷ quyền của quảng cáo gốc:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
Sau đó, hãy triển khai
GADNativeAdDelegate
để nhận các lệnh gọi uỷ quyền sau đây:
Swift
func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
// The native ad was shown.
}
func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
// The native ad was clicked on.
}
func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
// The native ad will present a full screen view.
}
func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad will dismiss a full screen view.
}
func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad did dismiss a full screen view.
}
func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
// The native ad will cause the app to become inactive and
// open a new app.
}
Objective-C
- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
// The native ad was shown.
}
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
// The native ad was clicked on.
}
- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
// The native ad will present a full screen view.
}
- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
// The native ad will dismiss a full screen view.
}
- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
// The native ad did dismiss a full screen view.
}
- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
// The native ad will cause the app to become inactive and
// open a new app.
}
Các phương pháp hay nhất
Hãy tuân thủ các quy tắc này khi tải quảng cáo.
Ứng dụng sử dụng quảng cáo gốc trong một danh sách phải lưu trước danh sách quảng cáo vào bộ nhớ đệm.
Khi lưu trước quảng cáo, hãy xoá bộ nhớ đệm rồi tải lại sau một giờ.
Không gọi lại
loadRequest:
trênGADAdLoader
cho đến khi yêu cầu trước đó tải xong, như được biểu thị bằngadLoaderDidFinishLoading:
.
Hiển thị quảng cáo của bạn
Sau khi tải quảng cáo, bạn chỉ cần hiển thị quảng cáo đó cho người dùng. Hãy xem Hướng dẫn về Quảng cáo gốc nâng cao của chúng tôi để biết cách thực hiện.