È possibile reimpostare, riutilizzare o rilasciare un'istanza MediaPlayer non più necessaria.
Quando si reimposta un'istanza MediaPlayer
, viene restituito al relativo stato IDLE non inizializzato come definito in MediaPlayerStatus
.
Questa operazione è utile nei casi seguenti:
Desideri riutilizzare un'istanza MediaPlayer
ma devi caricare una nuova MediaResource
(contenuto video) e sostituire l'istanza precedente.
La reimpostazione consente di riutilizzare l’istanza MediaPlayer
senza sovraccaricare le risorse rilasciate, ricreare l’ MediaPlayer
e riallocare le risorse.
Quando il MediaPlayer
è nello stato ERROR e deve essere cancellato.
Questo è l'unico modo per recuperare dallo stato ERROR.
Invoca reset
per restituire l'istanza MediaPlayer
al suo stato non inizializzato:
void reset() throws MediaPlayerException;
Utilizza MediaPlayer.replaceCurrentResource()
per caricare un altro MediaResource
.
Per cancellare un errore, carica lo stesso MediaResource
.
Quando ricevi il callback dell'evento STATUS_CHANGED
con stato PREPARED
, avvia la riproduzione.
Rilasciare un'istanza e risorse MediaPlayer
quando non è più necessario MediaResource
.
Quando si rilascia un oggetto MediaPlayer
, le risorse hardware sottostanti associate a questo oggetto MediaPlayer
vengono deallocate.
Di seguito sono riportati alcuni motivi per rilasciare un MediaPlayer
:
L'utilizzo di risorse non necessarie può influire sulle prestazioni.
Se si lascia un oggetto MediaPlayer
non necessario, l'istanza può comportare un consumo continuo di batterie per i dispositivi mobili.
Se sono presenti più istanze
Se un dispositivo non supporta lo stesso codec video, potrebbe verificarsi un errore di riproduzione per altre applicazioni.
Rilascia il MediaPlayer
.
void release() throws MediaPlayerException;
Una volta rilasciata l’istanza MediaPlayer
, non puoi più utilizzarla. Se dopo il rilascio viene chiamato un metodo dell'interfaccia MediaPlayer
, viene lanciato un MediaPlayerException
.