Inizia
-
Installa il plugin
Terminal window npm i @capgo/capacitor-mux-playerTerminal window pnpm add @capgo/capacitor-mux-playerTerminal window yarn add @capgo/capacitor-mux-playerTerminal window bun add @capgo/capacitor-mux-player -
Sincronizza i progetti nativi
Terminal window npx cap syncTerminal window pnpm cap syncTerminal window yarn cap syncTerminal window bunx cap sync
Preparazione iOS
Section titled “Preparazione iOS”- Apri l’area di lavoro Xcode in
ios/App/. - Aggiungi il pacchetto Swift
https://github.com/muxinc/mux-player-swiftal target della tua app in modo che il moduloMuxPlayerSwiftsia disponibile. - Assicurati che il target di distribuzione sia iOS 15+ e ricompila.
Preparazione Android
Section titled “Preparazione Android”Il modulo Gradle viene fornito con i repository e le dipendenze corretti. Se utilizzi un proxy aziendale personalizzato, consenti le richieste a https://muxinc.jfrog.io/artifactory/default-maven-release-local.
Avvia il player
Section titled “Avvia il player”import { MuxPlayer } from '@capgo/capacitor-mux-player';
await MuxPlayer.play({ playbackId: 'your-playback-id', environmentKey: 'your-mux-data-key', title: 'Launch Announcement', subtitle: 'Filmed live at Capgo HQ', poster: 'https://stream.example.com/poster.jpg',});Ascolta gli eventi del player
Section titled “Ascolta gli eventi del player”const readyHandle = await MuxPlayer.addListener('ready', ({ playerName }) => { console.log('Mux player pronto', playerName);});
const errorHandle = await MuxPlayer.addListener('error', ({ message }) => { console.error('Errore Mux player:', message);});
// Pulisci dopo aver chiuso il playerconst dismissPlayer = async () => { await MuxPlayer.dismiss(); await readyHandle.remove(); await errorHandle.remove();};Riproduzione basata su token
Section titled “Riproduzione basata su token”await MuxPlayer.play({ playbackId: 'signed-playback-id', playbackToken: signedPlaybackToken, drmToken: signedDrmToken, // Facoltativo se hai abilitato le politiche DRM autoPlay: true, startTime: 120, // inizia a 2 minuti});Reagisci al ciclo di vita del player
Section titled “Reagisci al ciclo di vita del player”const { active } = await MuxPlayer.isActive();if (active) { console.log('Player attualmente visibile');}
// Rimuovi tutte le registrazioni dei listener durante lo smontaggioawait MuxPlayer.removeAllListeners();Suggerimenti
Section titled “Suggerimenti”- Genera token di riproduzione firmati e DRM sul tuo backend utilizzando le chiavi di firma Mux.
- Passa un
playerNameper separare l’analisi quando esegui più player nella tua app. - Combina con
enableSmartCacheper migliorare la resilienza offline sulle piattaforme supportate.