การเปิดตัว Firebase C++ SDK v9.1.0 ทำให้เกิด C++ SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google ใหม่
C++ SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google เป็นแพลตฟอร์ม API ใหม่ที่รวมเอาการเปลี่ยนแปลงสำคัญที่เกิดขึ้นกับ Firebase AdMob C++ SDK สำหรับ iOS และ Android ในปี 2021 และ 2022 รวมถึงการถอด API ที่เลิกใช้งานแล้ว และขั้นตอนใหม่เมื่อทำงานกับโฆษณาแบบเต็มหน้าจอ ประเภท
Firebase AdMob C++ SDK เก่า ( firebase::admob
) ถูกทำเครื่องหมายว่าเลิกใช้งานแล้ว และจะไม่ได้รับการอัปเดตหรือการแก้ไขข้อบกพร่องใดๆ ในอนาคต
ทั้ง C++ SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google ใหม่ ( firebase::gma
) และ Firebase AdMob C++ SDK เก่า ( firebase::admob
) จะยังคงเป็นส่วนหนึ่งของไฟล์เก็บถาวรบิวด์สำหรับ Firebase C++ SDK ในระหว่างกรอบเวลาการเลิกใช้งาน Firebase AdMob C++ SDK
การลบ API เดิม
API ต่อไปนี้ได้ถูกนำออกจาก Google Mobile Ads C++ SDK ทั้งหมดแล้ว
RewardedVideoAd
เนมสเปซ RewardedVideoAd
ของ AdMob ถูกแทนที่ด้วยคลาส RewardedAd
RewardedAd
มีพฤติกรรมคล้ายกับ InterstitialAd
แต่มี RewardedAdListener
เพิ่มเติมเพื่อรับการแจ้งเตือนรางวัลไอเทม
NativeExpressAds
NativeExpressAd
ของ AdMob ได้รับการทำเครื่องหมายว่าเลิกใช้งานแล้วใน Firebase AdMob C++ SDK แต่ละรายการ ดังนั้น NativeExpressAd
จึงไม่รวมอยู่ใน C++ SDK โฆษณาบนมือถือของ Google ใหม่
การเปลี่ยนแปลงเนมสเปซ SDK
SDK ได้ย้ายไปยังเนมสเปซใหม่ และมีโครงสร้างไดเรกทอรีใหม่:
เนมสเปซ firebase::gma
แหล่งที่มาของ C++ SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google ใหม่อยู่ในเนมสเปซ firebase::gma
เนมสเปซ firebase::admob
เก่าเลิกใช้งานแล้วพร้อมกับ Firebase AdMob C++ SDK
โครงสร้างไดเร็กทอรี
ไฟล์ส่วนหัวได้ย้ายไปยังไดเร็กทอรีใหม่ภายในไฟล์ build:
Firebase AdMob C++ SDK ที่เลิกใช้งานแล้ว | ใหม่ SDK โฆษณาบนมือถือของ Google C++ |
---|---|
include/firebase/admob | include/firebase/gma |
ห้องสมุด
Firebase AdMob C++ SDK จะถูกจัดเตรียมเป็นไลบรารีแบบคงที่ภายในไฟล์เก็บถาวรของ Firebase C++ SDK:
ไอโอเอส
Firebase AdMob C++ SDK ที่เลิกใช้งานแล้ว | ใหม่ SDK โฆษณาบนมือถือของ Google C++ |
---|---|
firebase_admob.xcframework | firebase_gma.xcframework |
หุ่นยนต์
Firebase AdMob C++ SDK ที่เลิกใช้งานแล้ว | ใหม่ SDK โฆษณาบนมือถือของ Google C++ |
---|---|
libfirebase_admob.a | libfirebase_gma.a |
การย้ายคลาส แจงนับ และโครงสร้าง
ตารางด้านล่างแสดงรายการคลาส เฉพาะ และโครงสร้างที่เปลี่ยนแปลงหรือถูกลบออก นี่เป็นบทสรุป:
-
BannerView
เปลี่ยนชื่อเป็นAdView
-
NativeAdExpressView
ถูกลบออก - เนมสเปซ
RewardedVideo
จะถูกแทนที่ด้วยคลาสRewardedAd
- การแจงนับและผู้ฟัง
PresentationState
จะถูกลบออกและแทนที่ด้วยผู้ฟังAdListener
และFullScreenContent
พารามิเตอร์ต่อไปนี้จะถูกลบออกเป็นพารามิเตอร์การกำหนดค่าต่อโฆษณาใน
AdRequests
:- การกำหนดค่ารหัสอุปกรณ์ทดสอบ
- การกำหนดเป้าหมายโฆษณาตามอายุ
แต่ขณะนี้สามารถกำหนดค่าพารามิเตอร์เหล่านี้ได้ใน
RequestConfiguration
ซึ่งเป็นการตั้งค่าส่วนกลางที่จะส่งผลต่อการโหลดโฆษณาที่ตามมาทั้งหมด
firebase::admob namespace ที่เลิกใช้แล้ว | ใหม่ firebase::gma namespace |
---|---|
AdSizeType (แจงนับ) | AdSize::Type (แจงนับ) |
BannerView | AdView |
BannerView::Listener | AdListener AdViewBoundingBoxListener PaidEventListener |
BannerView::Position | AdView::Position |
BannerView::PresentationState | ลบออก |
ChildDirectedTreatmentState | RequestConfiguration::TagForChildDirectedTreatment |
Gender (แจงนับ) | ลบออก |
InterstitialAd::Listener | FullScreenContentListener PaidEventListener |
KeyValuePair | ลบออก |
NativeExpressAdView | ลบออก |
PollableRewardListener | ลบออก |
RewardItem | AdReward |
RewardedVideoAd (เนมสเปซ) | RewardedAd (คลาส) |
RewardedVideoAd::Listener | FullScreenContentListener PaidEventListener UserEarnedRewardListener |
AdMobError (แจงนับ) | AdErrorCode (แจงนับ) |
RewardItem | AdReward |
การเริ่มต้น SDK
ฟังก์ชันการเริ่มต้น SDK C++ SDK ของโฆษณาบนอุปกรณ์เคลื่อนที่ของ Google แต่ละรายการจะส่งคืนตัวบ่งชี้สถานะ 2 ตัวทันที:
พารามิเตอร์ out ที่เป็นทางเลือกจะสื่อว่าเกิดข้อผิดพลาดในการขึ้นต่อกันก่อนที่กระบวนการเริ่มต้นจะเริ่มต้นหรือไม่
พารามิเตอร์ return คือการอ้างอิงถึง
firebase::Future
Future
ประกอบด้วยผลลัพธ์ของการเริ่มต้นอะซิงโครนัสของอะแดปเตอร์สื่อกลางบนอุปกรณ์
แม้ว่า Google Mobile Ads C++ SDK อาจถูกเรียกใช้เพื่อโหลดโฆษณาที่แสดงโดย AdMob ทันทีที่ฟังก์ชันการเริ่มต้นกลับมา เครือข่ายโฆษณาอื่นๆ จะไม่แสดงโฆษณาจนกว่าอะแดปเตอร์สื่อกลางที่เกี่ยวข้องจะเริ่มต้นโดยสมบูรณ์ กระบวนการนี้เกิดขึ้นแบบอะซิงโครนัส ดังนั้น หากคุณใช้สื่อกลางโฆษณาในแอปพลิเคชันของคุณ เราขอแนะนำให้คุณรอให้ Future
ได้รับการแก้ไขก่อนที่จะพยายามโหลดโฆษณาใดๆ
ก่อน
firebase::App* app = ::firebase::App::Create();
firebase::InitResult result = firebase::admob::Initialize(*app, kAdMobAppID);
if (result != kInitResultSuccess) {
// Initialization immediately failed, most likely due to a missing dependency.
// Check the device logs for more information.
return;
}
หลังจาก
using firebase::App;
using firebase::Future;
using firebase::gma::AdapterInitializationStatus;
App* app = ::firebase::App::Create();
firebase::InitResult result;
Future<AdapterInitializationStatus> future =
firebase::gma::Initialize(*app, &result);
if (result != kInitResultSuccess) {
// Initialization immediately failed, most likely due to a missing dependency.
// Check the device logs for more information.
return;
}
// Poll the future to wait for its completion either in this
// thread, or as part of your game loop by calling
// firebase::gma::InitializeLastResult();
while (future.status() == firebase::kFutureStatusPending) {
// Initialization on-going, continue to wait.
}
// future.status() is either kFutureStatusComplete or there’s an error
if (future.status() == firebase::kFutureStatusComplete &&
future.error() == firebase::gma::AdErrorCodeNone) {
AdapterInitializationStatus* status = future.result();
// Check status for any mediation adapters you wish to use.
// ..
} else {
// Handle initialization error.
}
การเปลี่ยนแปลง AdSize
ภายใน AdView
ตอนนี้ AdSize
ประกอบด้วยสมาชิกแบบคงที่ของขนาดโฆษณาแบนเนอร์ทั่วไป และรองรับขนาดโฆษณา AnchorAdaptive
และ InlineAdaptive
ซึ่งมีความสูงแบบไดนามิกตามความกว้างที่กำหนดและการวางแนวปัจจุบันของหน้าจอ
เพิ่มค่าคงที่ AdSize แบบคงที่ใน firebase::gma::AdSize | |
---|---|
AdSize::kBanner | ขนาดโฆษณาแบนเนอร์ของสมาคมการตลาดมือถือ (MMA) (พิกเซลไม่ขึ้นกับความหนาแน่น 320x50) |
AdSize::kFullBanner | Interactive Advertising Bureau (IAB) ขนาดโฆษณาแบนเนอร์แบบเต็ม (พิกเซลไม่ขึ้นกับความหนาแน่น 468x60) |
AdSize::kLargeBanner | kBanner เวอร์ชันสูงกว่า โดยทั่วไปจะมีขนาด 320x100 |
AdSize::kLeaderboard | ขนาดโฆษณากระดานผู้นำ Interactive Advertising Bureau (IAB) (พิกเซลไม่ขึ้นกับความหนาแน่น 728x90) |
AdSize::kMediumRectangle | Interactive Advertising Bureau (IAB) โฆษณาสี่เหลี่ยมผืนผ้ากลางขนาด (พิกเซลไม่ขึ้นกับความหนาแน่น 300x250) |
วิธีการคงที่ใน firebase::gma::AdSize เพื่อช่วยสร้างอินสแตนซ์ของ AdSize | |
---|---|
GetLandscapeAnchoredAdaptiveBannerAdSize | สร้าง AdSize ตามความกว้างที่กำหนดและความสูงที่ Google เพิ่มประสิทธิภาพ เพื่อสร้างโฆษณาแบนเนอร์ในโหมดแนวนอน |
GetPortraitAnchoredAdaptiveBannerAdSize | สร้าง AdSize ตามความกว้างที่กำหนดและความสูงที่ Google เพิ่มประสิทธิภาพเพื่อสร้างโฆษณาแบนเนอร์ในโหมดแนวตั้ง |
GetCurrentOrientationAnchoredAdaptiveBannerAdSize | สร้าง AdSize ตามความกว้างที่กำหนดและความสูงที่เพิ่มประสิทธิภาพโดย Google เพื่อสร้างโฆษณาแบนเนอร์ตามการวางแนวปัจจุบัน |
GetInlineAdaptiveBannerAdSize | สร้าง AdSize ที่เหมาะสมที่สุดสำหรับโฆษณาแบนเนอร์ที่มีความสูงสูงสุด |
GetLandscapeInlineAdaptiveBannerAdSize | สร้าง InlineAdaptive AdSize โดยมีความกว้างที่กำหนดและความสูงแนวนอนของอุปกรณ์ |
GetPortraitInlineAdaptiveBannerAdSize | สร้าง InlineAdaptive AdSize โดยมีความกว้างที่กำหนดและความสูงของแนวตั้งของอุปกรณ์ |
GetCurrentOrientationInlineAdaptiveBannerAdSize | วิธีการที่สะดวกสบายในการส่งคืน InlineAdaptive AdSize โดยพิจารณาจากการวางแนวอินเทอร์เฟซปัจจุบันที่มีความกว้างเฉพาะ |
ก่อน
firebase::admob::BannerView* banner_view = new firebase::admob::BannerView();
firebase::admob::AdSize ad_size;
ad_size.ad_size_type = firebase::admob::kAdSizeStandard;
ad_size.width = 320;
ad_size.height = 50;
// ad_parent is a reference to an iOS UIView or an Android Activity.
// banner_ad_unit is your ad unit id for banner ads.
banner_view->Initialize(ad_parent, banner_ad_unit, ad_size);
หลังจาก
firebase::gma::AdView* ad_view = new firebase::gma::AdView();
// ad_parent is a reference to an iOS UIView or an Android Activity.
// banner_ad_unit is your ad unit id for banner ads.
banner_view->Initialize(ad_parent, banner_ad_unit, firebase::gma::AdSize.kBanner);
AdRequest
และการกำหนดค่าส่วนกลาง
รหัสอุปกรณ์ทดสอบ, TagForChildDirectedTreatment
และ TagForUnderAgeOfConsent
(ก่อนหน้านี้จัดการตามวันเกิด) ได้ถูกลบออกจาก AdRequest
แล้ว และตอนนี้เป็นส่วนหนึ่งของ RequestConfiguration
ส่วนกลาง แอปพลิเคชันอาจเรียกใช้ firebase::gma::SetRequestConfiguration()
ตั้งแต่เนิ่นๆ ในวงจรการใช้งานของแอปพลิเคชันเพื่อกำหนดค่าเหล่านี้ การดำเนินการโหลดโฆษณาที่ตามมาทั้งหมดจะใช้การตั้งค่าเหล่านี้เมื่อกำหนดค่าแล้ว
firebase::gma::AdRequest
ยังคงมีอยู่เนื่องจากมีข้อมูลเชิงบริบทสำหรับการโหลดโฆษณา รวมถึงคำหลักและ URL เนื้อหาที่ไม่บังคับ
โครงสร้าง AdRequest
รูปแบบ C ของ AdMob ถูกแทนที่ด้วยคลาสที่มีเมธอดที่ให้ประสบการณ์ผู้ใช้ที่ดีขึ้นเมื่อกำหนดและต่อท้ายรายการข้อมูลต่างๆ
การเปลี่ยนแปลง AdRequest
ที่โดดเด่นมีดังนี้:
- ขณะนี้ส่วนพิเศษเชื่อมโยงกับชื่อคลาสอะแด็ปเตอร์สื่อกลาง สิ่งพิเศษที่ส่งไปยังบริการ AdMob ควรใช้ชื่อคลาสเริ่มต้นตามที่กำหนดไว้ด้านล่าง
- เมื่อขอโฆษณา แอปอาจส่ง URL ของเนื้อหาที่แสดงอยู่ ซึ่งจะทำให้การกำหนดเป้าหมายจากคำหลักสามารถจับคู่โฆษณากับเนื้อหาอื่นที่กำลังแสดงได้
ก่อน
firebase::admob::AdRequest request;
// Keywords to be used in targeting.
const char* keywords[] = {"GMA", "C++", "Fun"};
request.keyword_count = sizeof(keywords) / sizeof(keywords[0]);
request.keywords = keywords;
// "Extra" key value pairs.
static const firebase::admob::KeyValuePair extras[] = {
{"extra_name", "extra_value"}};
request.extras_count = sizeof(extras) / sizeof(extras[0]);
request.extras = kRequestExtras;
// Devices that should be served test ads.
const char* test_device_ids[] ={ "123", "4567", "890" };
request.test_device_id_count =
sizeof(test_device_ids) / sizeof(test_device_ids[0]);
request.test_device_ids = test_device_ids;
// Sample birthday to help determine the age of the user.
request.birthday_day = 10;
request.birthday_month = 11;
request.birthday_year = 1975;
// Load Ad with the AdRequest.
หลังจาก
// Do once after Google Mobile Ads C++ SDK initialization.
// These settings will affect all Ad Load operations.
firebase::gma::RequestConfiguration configuration;
configuration.max_ad_content_rating =
firebase::gma::RequestConfiguration::kMaxAdContentRatingPG;
configuration.tag_for_child_directed_treatment =
firebase::gma::RequestConfiguration::kChildDirectedTreatmentTrue;
configuration.tag_for_under_age_of_consent =
firebase::gma::RequestConfiguration::kUnderAgeOfConsentFalse;
configuration.test_device_ids.push_back("1234");
configuration.test_device_ids.push_back("4567");
configuration.test_device_ids.push_back("890");
firebase::gma::SetRequestConfiguration(configuration);
// Then, more information must be provided via an AdRequest when
// loading individual ads.
firebase::gma::AdRequest ad_request;
// "Extra" key value pairs.
ad_request.add_keyword("GMA");
ad_request.add_keyword("C++");
ad_request.add_keyword("Fun");
// Content URL.
ad_request.set_content_url("www.example.com");
// Mediation Adapter Extras.
#if defined(Android)
const char* ad_network_extras_class_name =
"com/google/ads/mediation/admob/AdMobAdapter";
#else // iOS
const char* ad_network_extras_class_name = "GADExtras";
#endif
ad_request.add_extra(ad_network_extras_class_name, "extra_name", "extra_value");
// Load Ad with the AdRequest. See next section.
AdResults
ขณะนี้ LoadAd
ส่งคืน Future
ที่มีออบเจ็กต์ AdResult
สำหรับประเภทโฆษณา AdView
, InterstitialAd
และ RewardedAd
ทั้งหมด เมธอด AdResult::is_successful
จะคืนค่า true
หากคำขอโฆษณาได้รับการตอบสนองสำเร็จ หรือ false
หากไม่สำเร็จ
เมื่อล้มเหลว AdResult
จะมีออบเจ็กต์ AdError
พร้อมด้วยข้อมูลระดับบริการเกี่ยวกับปัญหา รวมถึงรหัสข้อผิดพลาด ข้อความแสดงข้อผิดพลาด และสตริงโดเมน
ก่อน
firebase::Future<AdResult> future;
void load_ad() {
// Assume an already created AdRequest object.
future = ad_view->LoadAd(ad_request);
}
void your_game_loop() {
if (future.status() == firebase::kFutureStatusComplete) {
if(future.error() != firebase::admob::kAdMobErrorNone) {
// There was either an internal SDK issue that caused the Future to
// fail its completion, or AdMob failed to fulfill the ad request.
// Details are unknown other than the Future’s error code returned
// from future.error().
} else {
// The ad loaded successfully.
}
}
}
หลังจาก
firebase::Future<AdResult> future;
void load_ad() {
// Assumes a previously created AdRequest object.
// See "AdRequest and Global Configuration" above.
future = ad_view->LoadAd(ad_request);
}
void your_game_loop() {
// Check the future status in your game loop:
if (future.status() == firebase::kFutureStatusComplete) {
if(future.error() != firebase::admob::kAdErrorCodeNone) {
// There was an internal SDK issue that caused the Future to fail.
} else {
// Future completed successfully. Check the GMA result.
const AdResult* ad_result = future.result();
if ( ad_result->is_successful() != true ) {
// GMA failed to serve an ad. Gather information about the error.
const AdError& ad_error = ad_result->ad_error();
AdErrorCode error_code = ad_error.code();
const std::string error_domain = ad_error.domain();
const std::string error_message = ad_error.message();
} else {
// The ad loaded successfully.
}
}
}
}
เหตุการณ์ AdListener
ภายใน AdView
คลาส BannerView::Listener
ของ AdMob ถูกแทนที่ด้วยคลาส Listener ที่แตกต่างกัน 2 คลาสใน Google Mobile Ads C++ SDK:
-
AdListener
ติดตามวงจรชีวิตของโฆษณาและเหตุการณ์การโต้ตอบของผู้ใช้ -
AdViewBoundingBoxListener
จะถูกเรียกใช้เมื่อมีการปรับขนาดหรือย้ายAdView
AdMob OnPresentationStateChanged
โทรกลับการแมปโฆษณาบนมือถือของ Google
ประเภทที่แจกแจง firebase::admob::BannerView::PresentationState
และวิธีการ Listener OnPresentationStateChanged
จะไม่รวมอยู่ใน C++ SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google ใหม่
ต่อไปนี้เป็นอีกวิธีหนึ่งในการตรวจจับการเปลี่ยนแปลงสถานะการนำเสนอในวงจรชีวิตของ AdView
:
firebase::admob::BannerView::Listener OnPresentationStateChanged เหตุการณ์ | firebase::gma::AdListener ที่เทียบเท่ากัน |
---|---|
kPresentationStateHidden | เมื่อมีการเรียกใช้ AdListener::OnAdClosed หรือเมื่อ AdView::Hide() ดำเนินการแบบอะซิงโครนัสเสร็จสมบูรณ์ |
kPresentationStateVisibleWithoutAd | ไม่มี. การพยายามเรียกใช้ AdView::Show() AdView ที่ไม่ได้โหลดจะส่งผลให้เกิดข้อผิดพลาด |
kPresentationStateVisibleWithAd | เมื่อมีการเรียกใช้ AdListener::OnAdOpened หรือเมื่อ AdView::Show() ดำเนินการอะซิงโครนัสกับโฆษณาได้สำเร็จ |
kPresentationStateOpenedPartialOverlay | ค้นหากรอบขอบเขตหลังจากเรียกใช้ AdListener::OnAdOpened() เพื่อกำหนดขนาดและตำแหน่งของโฆษณาที่แสดง หรือสอบถามตำแหน่งของ AdView และ AdSize และ/หรือตรวจสอบกรอบขอบเขตผ่าน AdViewBoundingBoxListener |
kPresentationStateCoveringUI | ดู kPresentationStateOpenedPartialOverlay ด้านบน |
ตอนนี้ RewardedAd
เป็นคลาสแล้ว
Firebase AdMob C++ SDK ที่เลิกใช้งานแล้วอำนวยความสะดวกให้กับโฆษณาที่มีการให้รางวัลผ่านชุดฟังก์ชันในเนมสเปซ firebase::admob::rewarded_ad
ฟังก์ชันเหล่านี้ได้รวมเข้าด้วยกันเป็นคลาส RewardedAd
ใหม่ ซึ่งแสดงโฆษณาที่มีพื้นที่ API คล้ายกับ InterstitialAd
ระหว่างหน้า (ดูหัวข้อถัดไป)
ผู้ฟังโฆษณา InterstitialAd
และผู้ฟัง RewardedAd
ทั้งโฆษณาคั่นระหว่างหน้าและโฆษณาที่มีการให้รางวัลถือเป็นโฆษณาแบบเต็มหน้าจอ สามารถติดตั้ง FullScreenContentListener
ใหม่เพื่อฟังเหตุการณ์วงจรชีวิตของโฆษณาสำหรับประเภทโฆษณาเหล่านี้ และสามารถติดตั้ง PaidEventListener
แยกต่างหากเพื่อติดตามเมื่อบริการ AdMob ถือว่ามีเหตุการณ์ที่ต้องชำระเงินเกิดขึ้น
RewardedAd
มีผู้ฟังเพิ่มเติมเพื่อติดตามกิจกรรมรางวัลที่ผู้ใช้ได้รับ
วิธีการเรียกกลับโฆษณาแบบเต็มหน้าจอแบบใหม่
วิธีการ FullScreenContentListener | วิธีการ PaidEventListener | วิธีการ UserEarnedRewardListener |
---|---|---|
OnAdClicked | OnPaidEvent | OnUserEarnedReward |
OnAdDismissedFullScreenContent | ||
OnAdFailedToShowFullScreenContent | ||
OnAdImpression | ||
OnAdShowedFullScreenContent |
วิธีการเปลี่ยน/ลบ/แทนที่
ตารางด้านล่างแสดงวิธีการเฉพาะที่เปลี่ยนแปลงใน C++ SDK โฆษณาบนมือถือของ Google ใหม่ วิธีการที่มีพารามิเตอร์แสดงอยู่ยังคงอยู่แต่ลายเซ็นมีการเปลี่ยนแปลง
ระดับ | Firebase AdMob C++ SDK API | API C++ SDK โฆษณาบนมือถือของ Google | หมายเหตุ |
---|---|---|---|
BannerView | MoveTo | AdView::SetPosition | |
presentation_state | ลบออก | จัดการโดยเหตุการณ์ AdViewListener และ AdView::Show และ AdView::Hide ผลลัพธ์ในอนาคต | |
SetListener | AdView::SetAdListener AdView::SetBoundingBoxListener AdView::SetPaidEventListener | การออกแบบ Listener ใหม่เพิ่มความเที่ยงตรงในการตรวจหาเหตุการณ์วงจรชีวิต AdView | |
Listener::OnPresentationStateChanged | ลบออก | ดู BannerView::SetListener ด้านบน | |
Listener::OnBoundingBoxChanged | AdViewBoundingBoxListener::OnBoundingBoxChanged | ||
โฆษณาคั่นระหว่างหน้า | Initialize(AdParent parent, const char* ad_unit_id) | Initialize(AdParent parent) | ขณะนี้พารามิเตอร์ ad_unit_id เป็นส่วนหนึ่งของการดำเนินการ LoadAd |
LoadAd(const AdRequest& request) | LoadAd(const char* ad_unit_id, const AdRequest& request) | ||
presentation_state | ลบออก | การแจงนับ presentation_state ได้ถูกลบออกแล้ว ใช้ FullScreenContentListener | |
SetListener | SetFullScreenContentListener SetPaidEventListener | ||
Destroy | ลบออก | การล้างทรัพยากรเป็นส่วนหนึ่งของตัวทำลาย RewardedAd แล้ว | |
RewardedAd (อย่างเป็นทางการ RewardedVideoAd ) | Initialize | Initialize(AdParent parent) | ก่อนหน้านี้ AdParent ถูกส่งไปที่ Show แต่ตอนนี้เป็นส่วนหนึ่งของการเริ่มต้น |
presentation_state | ลบออก | การแจงนับ presentation_state ได้ถูกลบออกแล้ว ใช้ FullScreenContentListener | |
SetListener | SetFullScreenContentListener Show SetPaidEventListener | นอกจากนี้ Listener UserEarnedReward ยังถูกกำหนดไว้เมื่อแสดง RewardedAd ดูด้านล่าง | |
Show(AdParent parent) | Show(UserEarnedRewardListener* listener) |