SlotAdsProvider
Providers that play ads in their own renderer over the content surface (FreeWheel). Content pauses underneath; the SDK core orchestrates the session through SlotAdsHost and receives events through SlotAdsProviderCallbacks.
Contract: after startSession the provider MUST eventually call host.resumeContent() exactly once per content gate — after prerolls complete, after an empty schedule, or after a failed or timed-out ad request. Core never self-starts content and adds no hidden timeouts; the provider owns its failure modes.
Functions
Content reached its end — the provider plays postrolls (if any) and then calls callbacks.onAllAdsCompleted().
Content play/pause state changes (drives provider video-state sync).
Content progress feed (core ticker) — drives midroll triggering.
A content seek happened — drives crossed-midroll catch-up.
The ViewGroup ads render into (set/cleared by the UI layer via core).
Begins an ad session for config (the OGMediaItem.adBreaks value).
Ends the session: stops any playing slot, unregisters listeners, disposes provider-side contexts. Idempotent.