안드로이드에서 최대 오펜 코어 인스턴스 수를 초과합니다

StackOverflow https://stackoverflow.com/questions/2432191

  •  19-09-2019
  •  | 
  •  

문제

응용 프로그램을 실행하면 "최대 OpenCore 인스턴스 수를 초과"오류가 표시됩니다.이 오류를 해결하는 방법. 고맙습니다

도움이 되었습니까?

해결책

위의 내용은 미디어 플레이어의 즉각적인 인스턴스 인 경우 발생합니다.

당신은 읽어야합니다 미디어 플레이어와 다른 상태의 수명주기

  • 클래스 변수 범위에서 미디어 플레이어를 정의하십시오.
  • 필요에 따라 OnCreate 방법과 OnResume 메소드로 인스턴스화하십시오.
  • 오디오를 재생하는 기능에서 .reset 메소드를 사용하여 미디어 플레이어가 들어가고 유휴 상태로 이동합니다.
  • .SetDatasource 또는 동등한 상태를 사용하여 초기 상태로 가져옵니다.
  • 그런 다음. 준비된 상태에 대한 준비
  • 그런 다음. 오디오를 재생하도록 시작합니다
  • .Stop () 등을 중지합니다
  • 완료되면 .Release 기능을 사용하여 오디오 리소스를 해제하십시오.

미디어 플레이어는 클래스 범위 변수로 정의되고 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");
    }
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top