โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัลเป็นรูปแบบโฆษณาที่เสนอสิ่งจูงใจซึ่งช่วยให้คุณนำเสนอรางวัลสำหรับโฆษณาที่ปรากฏโดยอัตโนมัติระหว่างจุดเปลี่ยนหน้าตามปกติของแอป ผู้ใช้ไม่จําเป็นต้องเลือกดูโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล ซึ่งต่างจากโฆษณาที่มีการให้รางวัล คู่มือนี้แสดงวิธี ผสานรวมโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัลจาก AdMob เข้ากับแอป Flutter
ข้อกำหนดเบื้องต้น
- ปลั๊กอิน Flutter 1.1.0 ขึ้นไป
- ทำตามขั้นตอนเริ่มต้นใช้งาน แอป Flutter ของคุณควรนำเข้าปลั๊กอิน Google Mobile Ads Flutter ไว้แล้ว
ทดสอบด้วยโฆษณาทดสอบเสมอ
เมื่อสร้างและทดสอบแอป โปรดใช้โฆษณาทดสอบแทน โฆษณาจริงที่ใช้งานจริง หากไม่ดำเนินการดังกล่าวอาจส่งผลให้บัญชีถูกระงับ
วิธีที่ง่ายที่สุดในการโหลดโฆษณาทดสอบคือการใช้รหัสหน่วยโฆษณาทดสอบเฉพาะสำหรับ โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล
Android
ca-app-pub-3940256099942544/5354046379
iOS
ca-app-pub-3940256099942544/6978759866
หน่วยโฆษณาทดสอบได้รับการกำหนดค่าให้แสดงโฆษณาทดสอบสำหรับทุกคำขอ และ คุณสามารถใช้หน่วยโฆษณาทดสอบในแอปของคุณเองได้อย่างอิสระขณะเขียนโค้ด ทดสอบ และแก้ไขข้อบกพร่อง เพียงอย่าลืมแทนที่ด้วยรหัสหน่วยโฆษณาของคุณเองก่อนเผยแพร่ แอป
โหลดโฆษณา
ตัวอย่างต่อไปนี้จะโหลดโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล
แทนที่ _adUnitId ด้วยรหัสหน่วยโฆษณาของคุณเอง
เหตุการณ์โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล
การใช้ FullScreenContentCallback
ช่วยให้คุณฟังเหตุการณ์วงจร
ได้ เช่น เมื่อโฆษณาแสดงหรือถูกปิด ตั้งค่า
RewardedInterstitialAd.fullScreenContentCallback
ก่อนแสดงโฆษณาเพื่อ
รับการแจ้งเตือนสำหรับเหตุการณ์เหล่านี้ ตัวอย่างนี้จะใช้แต่ละเมธอดและ
บันทึกข้อความไปยังคอนโซล
ad.fullScreenContentCallback = FullScreenContentCallback(
onAdShowedFullScreenContent: (ad) {
// Called when the ad showed the full screen content.
debugPrint('Ad showed full screen content.');
},
onAdFailedToShowFullScreenContent: (ad, err) {
// Called when the ad failed to show full screen content.
debugPrint('Ad failed to show full screen content with error: $err');
// Dispose the ad here to free resources.
ad.dispose();
},
onAdDismissedFullScreenContent: (ad) {
// Called when the ad dismissed full screen content.
debugPrint('Ad was dismissed.');
// Dispose the ad here to free resources.
ad.dispose();
},
onAdImpression: (ad) {
// Called when an impression occurs on the ad.
debugPrint('Ad recorded an impression.');
},
onAdClicked: (ad) {
// Called when a click is recorded for an ad.
debugPrint('Ad was clicked.');
},
);
โฆษณาแบบดิสเพลย์
RewardedInterstitialAd
จะแสดงเป็นภาพซ้อนทับเหนือเนื้อหาแอปทั้งหมด
และจะวางแบบคงที่ จึงเพิ่มลงในโครงสร้างวิดเจ็ต Flutter ไม่ได้
คุณเลือกเวลาที่จะแสดงโฆษณาได้โดยเรียกใช้ show()
RewardedInterstitialAd.show()
รับ OnUserEarnedRewardCallback
ซึ่งจะ
เรียกใช้เมื่อผู้ใช้ได้รับรางวัล อย่าลืมใช้ฟีเจอร์นี้และให้รางวัลแก่
ผู้ใช้ที่ดูโฆษณา
_rewardedInterstitialAd?.show(
onUserEarnedReward: (AdWithoutView view, RewardItem rewardItem) {
debugPrint('Reward amount: ${rewardItem.amount}');
},
);
เมื่อเรียกใช้ show()
แล้ว Ad
ที่แสดงในลักษณะนี้จะนำออกโดยอัตโนมัติไม่ได้
และต้องใช้ข้อมูลจากผู้ใช้ RewardedInterstitialAd
จะแสดงได้เพียงครั้งเดียว
การเรียกใช้ฟังก์ชัน show ครั้งต่อๆ ไปจะทริกเกอร์
onAdFailedToShowFullScreenContent
ต้องทิ้งโฆษณาเมื่อไม่จำเป็นต้องเข้าถึงอีกต่อไป แนวทางปฏิบัติแนะนำ
สำหรับเวลาที่ควรเรียกใช้ dispose()
คือใน
FullScreenContentCallback.onAdDismissedFullScreenContent
และ
FullScreenContentCallback.onAdFailedToShowFullScreenContent
การเรียกกลับ
[ไม่บังคับ] ตรวจสอบความถูกต้องของ Callback การยืนยันฝั่งเซิร์ฟเวอร์ (SSV)
แอปที่ต้องการข้อมูลเพิ่มเติมใน Callback ของการยืนยันฝั่งเซิร์ฟเวอร์
ควรใช้ฟีเจอร์ข้อมูลที่กำหนดเองของโฆษณาที่มีการให้รางวัล ค่าสตริงที่ตั้งค่าในออบเจ็กต์โฆษณาที่มีการให้รางวัลจะส่งไปยังพารามิเตอร์การค้นหา custom_data
ของ
การเรียกกลับ SSV หากไม่ได้ตั้งค่าข้อมูลที่กําหนดเอง custom_data
ค่าพารามิเตอร์การค้นหาจะไม่ปรากฏในคอลแบ็ก SSV
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีตั้งค่าตัวเลือก SSV หลังจากโหลดโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัลแล้ว
แทนที่ SAMPLE_CUSTOM_DATA_STRING ด้วยข้อมูลที่กำหนดเอง
ตัวอย่างที่สมบูรณ์ใน GitHub
โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล