Player ExpoExpo / React Native player
Expo / React Native player
Native playback using expo-video and the Moviie playback API.
The @moviie/player-expo package targets Expo apps with a development build. It re-exports @moviie/player-sdk today; higher-level hooks and UI (MoviieVideo, telemetry wiring) ship incrementally.
What you get now
- Typed
MoviieClientforGET /api/v1/embeds/{embedId}/playback. - Telemetry primitives (
TelemetryClient, tokens, heartbeat) from@moviie/player-sdk. - Expo config plugin entry (
app.plugin) reserved for native capabilities (background audio, PiP). - Native playback features: dashboard / embed settings are the default source of truth; optional
useMoviiePlayer/MoviieVideo/VideoViewprops let integrators override explicitly when needed. - Expo Web (iframe embed): the
webtarget uses the watch iframe and Player API (embed.js), notexpo-videoinside React Native Web.
Limitations
expo-videorequires a dev client: Expo Go is not supported for full playback features.getPlaybackrequires a publishable API key (mvi_pub_*); see Quick start.- Always send
x-moviie-client(bundle_id=…;platform=…;sdk=…) so organization bundle rules apply consistently.
Next steps
Quick start
Minimal wiring in an Expo app.
Expo Web
Iframe embed and Player API on the web target.
Installation
Dependencies and workspace notes.
Configuration
Plugin and environment variables.
Identifiers & keys
Publishable keys and bundle IDs.
Error handling
Error codes, retry, and the built-in error shell.
Cast (Chromecast)
Optional Chromecast support via subpath adapter.
API reference
Props and options for every component and hook.