Channel characteristics
Channels differ in what they let a game do, and in how much UI they draw themselves. FRVR.channelCharacteristics is a plain object of flags describing the current one. Read it after FRVR.init() and before building any UI that depends on it.
The flags
Section titled “The flags”| Flag | Default | When it’s true |
|---|---|---|
allowExternalLinks | true | The game may open links to other sites. |
allowInternalLinks | true | The game may open links within the host. |
allowNavigation | true | The game may change location to move to another path. |
allowSendBeacon | true | navigator.sendBeacon may be used. |
allowThirdPartyDomains | true | Requests to third‑party domains are allowed. |
hasDedicatedLoadingScreen | true | The channel shows its own loading screen. |
allowSharing | true | The game may show share buttons. false means sharing is unsupported or the host’s own UI handles it. |
hasNativeAudioControls | false | The host draws the sound and music toggles and drives the game’s audio. See Audio state. |
usesPlatformLifecycle | false | Pause and resume come only from the platform’s SDK. See below. |
allowSharing and hasNativeAudioControls can be missing on older channel bundles. Treat a missing allowSharing as true and a missing hasNativeAudioControls as false:
Hide what the host already shows
Section titled “Hide what the host already shows”On the frvr.com game page, the page around the game draws the share button, the legal links, and the sound and music toggles. The channel reports allowSharing: false, allowExternalLinks: false, and hasNativeAudioControls: true, and it is best for the game to hide its own versions.
Platform lifecycle
Section titled “Platform lifecycle”When usesPlatformLifecycle is true, the SDK doesn’t attach focus, blur, or Page Visibility listeners. Every pause and resume the game sees comes from the platform. YouTube Playables requires this.
Nothing changes for the game: keep using the lifecycle hooks and don’t add visibility listeners of your own.