Iklan reward adalah iklan yang menyediakan banyak opsi interaksi untuk pengguna dengan imbalan reward dalam aplikasi. Panduan ini menunjukkan cara mengintegrasikan iklan reward dari Ad Manager ke dalam aplikasi Flutter.
Selalu melakukan pengujian dengan iklan percobaan
Saat membangun dan menguji aplikasi, pastikan Anda menggunakan iklan percobaan, bukan iklan produksi langsung. Jika Anda tidak melakukannya, akun Anda dapat ditangguhkan.
Cara termudah untuk memuat iklan percobaan adalah dengan menggunakan ID unit iklan percobaan khusus kami untuk iklan reward:
/21775744923/example/rewarded
Unit iklan pengujian dikonfigurasi untuk menampilkan iklan percobaan untuk setiap permintaan, dan Anda dapat menggunakannya di aplikasi Anda sendiri saat melakukan coding, pengujian, dan proses debug. Pastikan Anda menggantinya dengan ID unit iklan Anda sendiri sebelum memublikasikan aplikasi.
Memuat iklan
Contoh berikut memuat iklan reward:
Ganti _adUnitId dengan ID unit iklan Anda sendiri.
Peristiwa iklan reward
Dengan menggunakan FullScreenContentCallback
, Anda dapat memproses peristiwa siklus proses, seperti saat iklan ditampilkan atau ditutup. Tetapkan
RewardedAd.fullScreenContentCallback
sebelum menampilkan iklan untuk menerima
notifikasi untuk peristiwa ini. Contoh ini mengimplementasikan setiap metode dan mencatat pesan ke konsol:
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.');
},
);
Iklan Display
RewardedAd
ditampilkan sebagai Overlay di atas semua konten aplikasi dan ditempatkan secara statis; oleh karena itu, RewardedAd
tidak dapat ditambahkan ke hierarki widget Flutter. Anda dapat
memilih kapan iklan akan ditampilkan dengan memanggil show()
.
RewardedAd.show()
mengambil OnUserEarnedRewardCallback
, yang dipanggil saat
pengguna memperoleh reward. Pastikan untuk menerapkan hal ini dan memberikan reward kepada pengguna karena menonton iklan.
_rewardedAd?.show(
onUserEarnedReward:
(AdWithoutView ad, RewardItem rewardItem) {
debugPrint(
'Reward amount: ${rewardItem.amount}',
);
},
);
Setelah show()
dipanggil, Ad
yang ditampilkan dengan cara ini tidak dapat dihapus
secara terprogram dan memerlukan input pengguna. RewardedAd
hanya dapat ditampilkan
sekali. Panggilan berikutnya untuk menampilkan akan memicu onAdFailedToShowFullScreenContent
.
Iklan harus dihapus saat akses ke iklan tidak lagi diperlukan. Praktik terbaik
untuk waktu memanggil dispose()
adalah di callback
FullScreenContentCallback.onAdDismissedFullScreenContent
dan
FullScreenContentCallback.onAdFailedToShowFullScreenContent
.
[Opsional] Memvalidasi callback verifikasi sisi server (SSV)
Aplikasi yang memerlukan data tambahan dalam callback verifikasi sisi server
harus menggunakan fitur data kustom iklan reward. Nilai string apa pun yang ditetapkan pada objek iklan reward diteruskan ke parameter kueri custom_data
dari callback SSV. Jika tidak ada nilai data kustom yang ditetapkan, nilai parameter kueri custom_data
tidak akan ada di callback SSV.
Contoh kode berikut menunjukkan cara menyetel opsi SSV setelah iklan reward dimuat:
Ganti SAMPLE_CUSTOM_DATA_STRING dengan data kustom Anda.