v0.6.0-alpha - Rewarded + Rewarded Interstitial (Android device-verified)
Pre-release
Pre-release
Third + fourth real ad formats. Rewarded and Rewarded Interstitial both render full-screen on Android (verified end-to-end on emulator via Zamcalc: load → show → AdShown/AdImpression → user-earned-reward → AdDismissed → auto-reload). iOS code follows Google's reference docs and ships untested on real hardware.
Highlights
Admob::rewarded('slot')->load()->show()plays a rewarded video. When the user watches to the threshold,UserEarnedRewardevent fires withslot,format,type,amount.Admob::rewardedInterstitial('slot')->load()->show()is the auto-play-on-entry variant with a 5-second skip warning. Same event surface.- Both formats share Phase 4's full-screen content callback machinery (
AdLoaded,AdFailedToLoad,AdShown,AdFailedToShow,AdImpression,AdClicked,AdDismissed) plus the newUserEarnedRewardevent. - iOS retains the FullScreenContentDelegate alongside the ad in the registry (Phase 4 lesson).
Breaking (pre-1.0)
UserEarnedRewardevent constructor signature gains aformatparameter as the second argument:__construct(string $slot, string $format, string $type, int $amount). Brings the event in line with all other Ad* events so a single Livewire listener can branch by format. Any consumer constructing this event manually must update the call site.
Still stubs
App Open, UMP consent, ATT - Phases 6, 7, 8.
Full notes: CHANGELOG.md.