Integra la libreria Jetpack Media3 come standard per la riproduzione, le sessioni, la modifica, i metadati e l'estrazione dei frame multimediali per garantire che le app utilizzino le API consigliate per la gestione di attività multimediali complesse su tutti i fattori di forma Android. La modernizzazione dell'architettura multimediale tramite la migrazione dalle API del framework legacy (come MediaPlayer, MediaMuxer e MediaExtractor) alla solida libreria Jetpack Media3 fornisce un toolkit unificato e ricco di funzionalità che garantisce esperienze multimediali coerenti.
Implementazione richiesta
Per essere idonea al programma AEP, la tua app deve rispettare i seguenti requisiti:
- Non utilizzare le API del framework Android legacy, tra cui MediaPlayer, MediaExtractor, MediaMuxer e MediaMetadataRetriever.
- Se la riproduzione è un percorso utente principale, l'app deve integrare le sessioni multimediali per la consapevolezza del sistema operativo e l'integrazione cross-device.
- Se l'app ha una raccolta di contenuti audio, deve esporre i contenuti tramite MediaLibraryService e implementare il supporto per la ripresa dei contenuti multimediali.
Applicabilità delle linee guida
Queste linee guida si applicano a:
- App che supportano la riproduzione di contenuti multimediali (video o audio) o il montaggio video.
- A tutti i fattori di forma su cui è disponibile l'app.
Esenzioni
Le app possono utilizzare un framework alternativo equivalente che offra qualità, funzionalità utente, stabilità e compatibilità simili nell'ecosistema. Contatta l'assistenza se hai un framework adatto da prendere in considerazione. Per qualificarsi, l'implementazione alternativa deve soddisfare i seguenti benchmark:
- Su una rete veloce, il primo fotogramma del video deve essere visualizzato entro 500 ms dall'avvio da parte dell'utente.
- La riproduzione deve rimanere fluida, senza cali di frame visibili o sottotitoli codificati udibili durante un periodo di 30 secondi.
- L'app deve gestire correttamente il focus audio.
- L'app deve rispondere ai tasti multimediali hardware, anche quando è in esecuzione in background.
- Se la riproduzione in background è supportata, l'app deve pubblicare una notifica in stile multimediale e utilizzare un servizio in primo piano.
- Se l'app supporta la ripresa della riproduzione, deve implementare la ripresa dei contenuti multimediali.
- Le disconnessioni delle cuffie devono essere gestite in modo controllato. Ad esempio, mettere in pausa la riproduzione anziché passare all'altoparlante.
- La riproduzione deve continuare senza fotogrammi persi quando si passa da un orientamento all'altro del dispositivo.
Documentazione e risorse sulle funzionalità
Le seguenti risorse forniscono indicazioni sull'implementazione e dettagli tecnici sulla funzionalità Media3. Queste risorse sono solo a scopo di riferimento e non contengono requisiti aggiuntivi del programma.
- Jetpack Media3
- Media3 ExoPlayer
- Controllare e pubblicizzare la riproduzione utilizzando una MediaSession
- API MediaExtractorCompat
- API MediaMuxerCompat
- API MetadataRetriever
- API FrameExtractor