1

Processing 2.0 を使用して Android デバイス用のアプリを開発しています。関数ですが、stopMP3(); を使用してサウンドを停止する必要があります。私はすべてを試しましたが、mp3 をロードし、処理を使用して再生/停止する最良の方法は何ですか?, snd.stop(); stopMP3 関数内では機能しません...

import android.media.*;
import android.content.res.*;

...

MediaPlayer snd;

...

    void setup()
{
MediaPlayer snd = new MediaPlayer();
}

...

void playMP3()
    { 
try {
    AssetManager assets = this.getAssets();
    AssetFileDescriptor fd = assets.openFd("loop1.mp3");
    snd.setDataSource(fd.getFileDescriptor(), fd.getStartOffset(), fd.getLength());
    snd.prepare();
    snd.start();
  snd.setLooping(true);
  }
  catch (IllegalArgumentException e) {
    e.printStackTrace();
  }
  catch (IllegalStateException e) {
    e.printStackTrace();
  } catch (IOException e) {
    e.printStackTrace();
  }

}

void stopMP3(){
????
}
4

1 に答える 1

0

これはメディア プレーヤーの簡単なサンプルです。

private MediaPlayer   m_Player;

//Start Play Function
private void startPlaying() {
    m_Player = new MediaPlayer();
    m_Player.setOnCompletionListener(onComplete);
    try {
        if(m_Player.isPlaying())
            stopPlaying();

        m_Player.setDataSource(m_FileName);
        m_Player.prepare();
        m_Player.start();

    } catch (IOException e) {

    }
}

//Stop Play Function
private void stopPlaying() {
    m_Player.stop();
    m_Player.reset();
    m_Player = null;
}

//and this is onComplete Listener
MediaPlayer.OnCompletionListener onComplete = new OnCompletionListener()
{

    @Override
    public void onCompletion(MediaPlayer mp)
    {
        stopPlaying();
    }
};

私はそれがあなたを助けていることを願っています

于 2013-07-01T05:07:19.510 に答える