0

MediaPlayer オブジェクトを使用してサウンドを再生しようとしていますが、最善を尽くしても機能しないようです。音は単に再生を拒否します。

これは、画面に触れたときに再生される短い音です。つまり、あまり遅延なく何度も繰り返さなければなりません。これを知って、状態図http://developer.android.com/reference/android/media/MediaPlayer.htmlに従いました。メソッド呼び出しの順序付けの何が問題なのか、正確にはわかりません。

MediaPlayer mp = MediaPlayer.create(this.getContext(), R.raw.select2);
try {
    mp.prepare();
    mp.start();                 
    Log.e("debug","sound played");
    }
catch(Exception e) {}
mp.stop();
4

2 に答える 2

0

prepare()メディアプレーヤーを呼び出しますが、使用するcreate()呼び出しはプレーヤーを自動的に準備します。これにより、もう一度IllegalStateException呼び出しようとするとprepare()、に送信されますcatch()(何らかの方法で例外を処理した場合は、これに気付くでしょう。つまり、スタックトレースを印刷します)。

于 2011-12-22T11:58:16.707 に答える
0
MediaPlayer player = MediaPlayer.create(this.getContext(), R.raw.select2);

以下に示すように、いくつかのプロパティを設定して音楽プレーヤーを構成します

player.setWakeMode(getApplicationContext()PowerManager.PARTIAL_WAKE_LOCK);
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.setOnPreparedListener(this);
player.setOnCompletionListener(this);
player.setOnErrorListener(this);
try {
   player.prepare();
   player.start();                 
   Log.e("debug","sound played");
}  catch(Exception e) {}
  player.stop();
于 2015-07-21T11:50:13.077 に答える