Skip to content

v0.6.0-alpha - Rewarded + Rewarded Interstitial (Android device-verified)

Pre-release
Pre-release

Choose a tag to compare

@blessedzulu blessedzulu released this 31 May 21:33
· 26 commits to main since this 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, UserEarnedReward event fires with slot, 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 new UserEarnedReward event.
  • iOS retains the FullScreenContentDelegate alongside the ad in the registry (Phase 4 lesson).

Breaking (pre-1.0)

  • UserEarnedReward event constructor signature gains a format parameter 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.