Frage

, wenn ich meine Anwendung ausführen es zeigt „überschreitet die maximale Anzahl von Opencore Instanzen“ error.How diesen Fehler zu beheben. Danke

War es hilfreich?

Lösung

Das oben passiert, wenn Ihr mehrere Instanzen des Mediaplayer instantianting.

Sie sollten über den Lebenszyklus des Media-Player und seine verschiedenen Zustände

  • Definieren Sie eine Media-Player, bei Klassenvariablen Umfang zum Beispiel
  • Instantiate es in der OnCreate-Methode und in den onResume Methoden nach Bedarf
  • in Ihrer Funktion Ihrer Audio-Anwendung die .reset Methode zu spielen, um den Media-Player zu gehen und Ruhezustand
  • zu bekommen
  • verwenden die .setDataSource oder gleichwertige es in einen initialisierten Zustand zu erhalten
  • dann .Prepare für den vorbereiteten Zustand
  • dann .start den Ton spielen
  • .stop () etc, es zu stoppen
  • , wenn Sie fertig Verwendung der .release Funktion, um die Audio-Ressource zu veröffentlichen.

Media Player als Klassenbereich Variable definiert ist und in der OnCreate () Methode

instanziiert
    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");
    }
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top