Dàn xếp AdMob là một tính năng cho phép bạn phân phát quảng cáo đến các ứng dụng của mình từ nhiều nguồn (bao gồm Mạng AdMob, mạng quảng cáo bên thứ ba và chiến dịch AdMob). Tính năng Dàn xếp AdMob giúp bạn tăng tối đa tỷ lệ đáp ứng và tăng khả năng kiếm tiền bằng cách gửi yêu cầu quảng cáo đến nhiều mạng để đảm bảo bạn tìm thấy mạng phù hợp nhất hiện có để phân phát quảng cáo. Nghiên cứu điển hình.
Điều kiện tiên quyết
Trước khi tích hợp tính năng dàn xếp cho một định dạng quảng cáo, bạn cần tích hợp định dạng quảng cáo đó vào ứng dụng của mình:
Bạn mới làm quen với tính năng dàn xếp? Hãy đọc bài viết Tổng quan về tính năng dàn xếp AdMob.
Khởi chạy SDK Quảng cáo trên thiết bị di động
Hướng dẫn bắt đầu nhanh cho bạn biết cách khởi chạy SDK Quảng cáo trên thiết bị di động. Trong lệnh gọi khởi chạy đó, các bộ chuyển đổi dàn xếp cũng được khởi chạy. Bạn cần đợi quá trình khởi chạy hoàn tất trước khi tải quảng cáo để đảm bảo mọi mạng quảng cáo đều tham gia đầy đủ vào yêu cầu quảng cáo đầu tiên.
Mã mẫu dưới đây cho thấy cách kiểm tra trạng thái khởi chạy của từng bộ chuyển đổi trước khi thực hiện yêu cầu quảng cáo.
// Initialize the Google Mobile Ads library
firebase::gma::Initialize(*app);
// In a game loop, monitor the initialization status
auto initialize_future = firebase::gma::InitializeLastResult();
if (initialize_future.status() == firebase::kFutureStatusComplete &&
initialize_future.error() == firebase::gma::kAdErrorCodeNone) {
// Initialization completed successfully, log the adapter status:
std::map<std::string, firebase::gma::AdapterStatus> adapter_status_map =
firebase::gma::GetInitializationStatus().GetAdapterStatusMap();
for (auto it = adapter_status_map.begin(); it != adapter_status_map.end(); ++it) {
std::string adapter_class_name = it->first;
firebase::gma::AdapterStatus adapter_status = it->second;
printf(“adapter: %s \t description: %s \t is_initialized: %d latency: %d\n”,
adapter_class_name.c_str(),
adapter_status.description().c_str(),
adapter_status.is_initialized(),
adpater_status.latency());
}
} else {
// Handle initialization error.
}
Để biết thêm thông tin về cách sử dụng Futures, hãy xem bài viết Sử dụng Futures để theo dõi trạng thái hoàn tất của các lệnh gọi phương thức.
Kiểm tra giá trị của adNetworkClassName
Mỗi kết quả quảng cáo chứa thông tin về tên lớp của mạng quảng cáo đã tìm nạp quảng cáo hiện tại.
Dưới đây là mã mẫu ghi lại tên lớp mạng quảng cáo từ một AdResult được trả về từ một AdView. Bạn có thể sử dụng mã tương tự cho quảng cáo xen kẽ và quảng cáo có tặng thưởng:
firebase::Future<AdResult> load_ad_future = banner_view.loadAd(ad_request);
// In a game loop, monitor the ad load status
if (load_ad_future.status() == firebase::kFutureStatusComplete &&
load_ad_future.error() == firebase::gma::kAdErrorCodeNone) {
const AdResult* ad_result = load_ad_future.result();
printf(“Loaded ad with adapter class name: %s\n”,
ad_result->adapter_class_name().c_str());
} else {
// Handle the load ad error.
}
Dàn xếp quảng cáo biểu ngữ
Hãy đảm bảo tắt tính năng làm mới trong tất cả các giao diện người dùng của mạng quảng cáo bên thứ ba cho đơn vị quảng cáo biểu ngữ dùng trong hoạt động Dàn xếp AdMob. Điều này sẽ giúp tránh xảy ra hiện tượng làm mới hai lần do AdMob cũng kích hoạt một lần làm mới dựa trên tốc độ làm mới của đơn vị quảng cáo biểu ngữ.
Các bước tiếp theo
SDK Quảng cáo của Google trên thiết bị di động bằng C++ bao bọc các cách triển khai SDK Android và iOS cho hoạt động dàn xếp. Do đó, việc định cấu hình thêm, bao gồm cả việc cài đặt bộ chuyển đổi dàn xếp, là dành riêng cho nền tảng Android và iOS. Để biết thêm thông tin, hãy xem hướng dẫn Chọn mạng cho SDK Quảng cáo của Google trên thiết bị di động cho Android và hướng dẫn Chọn mạng cho SDK Quảng cáo của Google trên thiết bị di động cho iOS.