questa seguente codice sorgente frammento di è dato:Android VideoView MediaPlayer OnInfoListener - gli eventi non hanno sparato
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() {
@Override
public boolean onInfo(MediaPlayer mp, int what, int extra) {
if (what == MediaPlayer.MEDIA_INFO_BUFFERING_END){
activity.dismissDialog(DialogID.DIALOG_LOADING);
return true;
}
return false;
}
});
}
});
sto Streaming HLS ruscelli con Android 3.x + dispositivi e cercando di nascondere una finestra di dialogo di carico una volta che il buffer è completato. Lo streaming video funziona, ma gli eventi informativi non vengono mai attivati.
Qualche idea?
Qualcuno può fornire una buona soluzione per questo? –
Mi chiedo se impostare "OnInfoListener" in "onPrepared (...)" sia semplicemente troppo tardi nella catena delle chiamate. La documentazione su 'prepareAsync()' dice quanto segue: * "(...) Per gli stream, dovresti chiamare prepareAsync(), che ritorna immediatamente, ** piuttosto che bloccare fino a quando non sono stati bufferizzati abbastanza dati **." * mi suona come se "onPrepared (...)" non venga colpito fino a quando i buffer non sono già stati riempiti. Qualche modifica a cui hai già dato una riflessione? Questo dovrebbe permetterti di impostare "OnInfoListener" ogni volta che vuoi. –