Android MediaPlayer error (-38, 0) (-19, 0)


1、error(-38,0)または(-19,0)のような原因は主に以下のいくつかの方面を含む.
  • new MediaPlayer()方式で作成されたオブジェクトは、prepare同期操作が終了することなくstart操作
  • を実行する.
  • new MediaPlayer()方式で作成するオブジェクトは、prepare同期操作が終了することなくgetDuration操作
  • を実行する.
  • はMediaPlayerを採用する.create方式で作成されたオブジェクトは、prepare操作
  • を実行する.
  • setDataSourceメソッドで、uriエラー
  • 2、正しいやり方は以下の通りです.
     
          MediaPlayer  :
    
    Consider using one of the create() methods for synchronously instantiating a MediaPlayer from a Uri or resource.
    

    なるべくMediaPlayerを採用する.create方式でオブジェクトを作成し、new MediaPlayer方式で作成しなければならない場合、startメソッドまたはgetDurationはprepareで実行を終了します.