สื่อกลาง AdMob เป็นฟีเจอร์ที่ช่วยให้คุณแสดงโฆษณาไปยังแอปได้จากหลายแหล่งที่มา ซึ่งรวมถึงเครือข่าย AdMob เครือข่ายโฆษณาของบุคคลที่สาม และแคมเปญ AdMob สื่อกลาง AdMob จะช่วยเพิ่มอัตราการส่งโฆษณาของคุณให้สูงที่สุด นอกจากนี้ยังเพิ่มการสร้างรายได้โดยการส่งคำขอโฆษณาไปให้หลายๆ เครือข่าย เพื่อให้มั่นใจได้ว่าคุณจะพบเครือข่ายที่ดีที่สุดที่พร้อมจะแสดงโฆษณา กรณีศึกษา
ข้อกำหนดเบื้องต้น
ก่อนที่จะผสานรวมสื่อกลางสำหรับรูปแบบโฆษณาได้ คุณจะต้องผสานรวมรูปแบบโฆษณาดังกล่าวลงในแอป ดังนี้
หากเพิ่งเริ่มใช้สื่อกลาง อ่านภาพรวมของสื่อกลาง AdMob
เริ่มต้น SDK โฆษณาในอุปกรณ์เคลื่อนที่
คู่มือเริ่มใช้งานฉบับย่อจะแสดงวิธีเริ่มต้น SDK โฆษณาในอุปกรณ์เคลื่อนที่ ระหว่างการเรียกเริ่มต้นนั้น สื่อกลางและอะแดปเตอร์การเสนอราคาจะได้รับการเริ่มต้นด้วย คุณควรรอให้การเริ่มต้นเสร็จสมบูรณ์ก่อนที่คุณจะโหลดโฆษณา เพื่อให้แน่ใจว่าเครือข่ายโฆษณาทุกเครือข่ายจะได้รับคำขอโฆษณาแรกอย่างเต็มที่
โค้ดตัวอย่างด้านล่างแสดงวิธีตรวจสอบสถานะการเริ่มต้นของอะแดปเตอร์แต่ละตัวก่อนส่งคำขอโฆษณา
// 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.
}
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการทำงานกับสัญญาซื้อขายล่วงหน้า โปรดดูใช้สัญญาซื้อขายล่วงหน้าเพื่อตรวจสอบสถานะความสมบูรณ์ของการเรียกใช้เมธอด
ตรวจสอบค่าของ adNetworkClassName
ผลการค้นหาโฆษณาแต่ละรายการจะมีข้อมูลเกี่ยวกับชื่อคลาสของเครือข่ายโฆษณาที่ดึงข้อมูลโฆษณาปัจจุบัน
ต่อไปนี้เป็นโค้ดตัวอย่างที่บันทึกชื่อคลาสเครือข่ายโฆษณาจาก AdResult
ที่ส่งคืนจาก AdView
โค้ดที่คล้ายกันสามารถใช้สำหรับโฆษณาคั่นระหว่างหน้าและ
โฆษณาที่มีการให้รางวัลได้
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.
}
สื่อกลางโฆษณาแบนเนอร์
อย่าลืมปิดใช้การรีเฟรชใน UI เครือข่ายโฆษณาบุคคลที่สามทั้งหมดสำหรับหน่วยโฆษณาแบนเนอร์ที่ใช้ในสื่อกลาง AdMob วิธีนี้จะป้องกันไม่ให้มีการรีเฟรชซ้ำ เพราะ AdMob จะทริกเกอร์การรีเฟรชโดยอิงตามอัตราการรีเฟรชของหน่วยโฆษณาแบนเนอร์ด้วย
ขั้นตอนถัดไป
C++ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google จะรวมการใช้ SDK สำหรับ Android และ iOS สำหรับสื่อกลาง ดังนั้น การกำหนดค่าเพิ่มเติม ซึ่งรวมถึงการติดตั้งอะแดปเตอร์สื่อกลางจะเป็นการกำหนดค่าเฉพาะสำหรับแพลตฟอร์ม Android และ iOS เท่านั้น สำหรับข้อมูลเพิ่มเติม โปรดดูคู่มือการเลือกเครือข่าย Android SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google และคำแนะนำด้านการเลือกเครือข่ายสำหรับ Google Mobile Ads iOS SDK