2017-11-27 12 views
0

私はAndroid MediaPlayerで私の知恵の終わりであり、助けを求めてWebを精査しました。私は単に資産ディレクトリに格納されている.mp3ファイルを再生するアプリケーションを持っています。これは私が(サムスンギャラクシー注4上)を実行していたコードです:Android mp3再生とエラー(1、-19)

mediaPlayer2 = new MediaPlayer(); 
    AssetFileDescriptor afd; 
    try { 
     afd = getAssets().openFd("achievement.mp3"); 
     mediaPlayer2.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(), afd.getLength()); 
     mediaPlayer2.prepareAsync(); 
     mediaPlayer2.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 

      @Override 
      public void onPrepared(MediaPlayer mp) { 
       mp.start(); 
      } 
     }); 
    } catch (Exception e) { e.printStackTrace();} 

ファイルが再生ではなく、私に次を与えません。

11-26 20:55:18.824 23555-23555/com.brainglove.iflbasic D/MediaPlayer: setSubtitleAnchor in MediaPlayer 
11-26 20:55:18.824 23555-23555/com.brainglove.iflbasic V/MediaPlayer: invoke 68 
11-26 20:55:18.834 23555-23555/com.brainglove.iflbasic V/MediaPlayer: getAudioStreamType 
11-26 20:55:18.834 23555-23555/com.brainglove.iflbasic V/MediaPlayer-JNI: getAudioStreamType: 3 (streamtype) 
11-26 20:55:18.834 23555-23555/com.brainglove.iflbasic V/MediaPlayer-JNI: start 
11-26 20:55:18.834 23555-23555/com.brainglove.iflbasic V/MediaPlayer: start 
11-26 20:55:18.834 23555-23555/com.brainglove.iflbasic W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView) 
11-26 20:55:18.874 23555-23567/com.brainglove.iflbasic V/MediaPlayer: message received msg=100, ext1=1, ext2=-19 
11-26 20:55:18.874 23555-23567/com.brainglove.iflbasic E/MediaPlayer: error (1, -19) 
11-26 20:55:18.874 23555-23567/com.brainglove.iflbasic V/MediaPlayer: callback application 
11-26 20:55:18.874 23555-23567/com.brainglove.iflbasic V/MediaPlayer: back from callback 
11-26 20:55:18.954 23555-23555/com.brainglove.iflbasic D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 96 - 0, 0) vi=Rect(0, 96 - 0, 0) or=1 
11-26 20:55:18.964 23555-23555/com.brainglove.iflbasic E/MediaPlayer: Error (1,-19) 

私は生と起動中にファイルを入れて試してみましたそこから。サイコロはありません。何かご意見は?

+0

私は持っています。これはmp.start()を実行した瞬間に発生します。私は関数の先頭にプレーヤーを作成しています。最初の実行では失敗しています。私の知る限りでは、他のプレイヤーはインスタンス化されていなくてはなりません。 – Gamemaker945

+0

誰でも-19の意味を知っていますか?私はどこでもそれを見つけることができません。 – Gamemaker945

+0

ところで、これまでのところ、これは6.0.1で動作するSamsung Galaxy Note 4の問題に過ぎません。私が試した上でテストした他のデバイス。 – Gamemaker945

答えて

0

はこれを試してみてください:

if(mp.isPlaying()) 
    { 
     mp.stop(); 
    } 
    try { 
     mp.reset(); 
     AssetFileDescriptor afd; 
     afd = getAssets().openFd("AudioFile.mp3"); 
     mp.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength()); 
     mp.prepare(); 
     mp.start(); 
    } catch (IllegalStateException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

コーディングハッピー!

+0

サイコロがありません。上のコードで追加のエラーが発生しました。 11-27 09:02:03.618 5459-5459/com.brainglove.iflbasic E/MediaPlayer:呼び出しに失敗しました:間違った状態0 – Gamemaker945

関連する問題