Pregunta

Cuando ejecuto mi aplicación se muestra "Supera el número máximo de instancias OpenCore" error.How para resolver este error. Gracias

¿Fue útil?

Solución

Lo anterior sucede si su instantianting varias instancias del MediaPlayer.

Usted debe leer sobre el ciclo de vida del reproductor multimedia y sus diferentes estados

  • Definir un reproductor de medios, en la clase de alcance variable de por ejemplo
  • instanciarlo en el método OnCreate y en los métodos onResume como se requiere
  • en su función para reproducir el audio utilice el método .reset para obtener el reproductor de medios para entrar en estado de reposo y
  • utilizar el .setDataSource o equivalente para entrar en un estado inicializado
  • entonces .prepare para el estado preparado
  • .start a continuación para reproducir el audio
  • .Stop (), etc para detenerlo
  • cuando su acabado utilizar la función .release para liberar el recurso de audio.

Media Player se define como una variable ámbito de clase y una instancia en el () Método OnCreate

    private void startPlayingAudio()
{
    try {

        Uri path1 = Uri.parse("android.resource://com.yourpackagehere./" + R.raw.beep);         
        mp.reset();  // reset to idle state
        mp.setDataSource(this, path1); // from idle to initialised state

        mp.prepare();

        mp.start();         
    } catch (Exception ioe) {
        Log.e(LOG_TAG, "Error playing the beep sound");
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top