サウンドを鳴らす

なんかサウンドを鳴らすだけなのに結構めんどくさいことをしないといけない。DoJaのAPI、くさっとるんちゃうやろか・・

  1. AudioPresenterのインスタンスCanvasなどのメンバ変数(m_AudioPresenter)に持つ
  2. サウンドデータを取得する
    (以下の処理はtry-catchしないといけない)
    1. MediaSound sound = MediaManager.getSound("resource:///"+サウンドファイル名);
    2. sound.use(); で使用可能宣言
  3. AudioPresenterにサウンドデータをセット
    1. m_AudioPresenter = AudioPresenter.getAudioPresenter(); でインスタンスを作成して
    2. m_AudioPresenter.setSound(sound); サウンドデータをセット
  4. あとは演奏やら中止やら行う
    • m_AudioPresenter.play();
    • m_AudioPresenter.stop();
    • m_AudioPresenter.pause();
    • m_AudioPresenter.restart();
  5. 演奏状態を把握したい場合はListenterを登録する
    1. m_AudioPresenter.setMediaListener(MediaListenerをimplementsしたクラス);
    2. mediaAction(MediaPresenter kind_of_src, int wType, int wParam) でイベントを受け取る
  6. if( kind_of_src == m_AudioPresenter) かを判断して
    あとはwTypeが以下の定数で判定して演奏状態を把握する
    • AudioPresenter.AUDIO_COMPLETE : 演奏が終了した
    • AudioPresenter.AUDIO_PAUSED : 演奏が一時停止された
    • AudioPresenter.AUDIO_PLAYING : 演奏が開始された
    • AudioPresenter.AUDIO_RESTARTED : 演奏が再開した
    • AudioPresenter.AUDIO_STOPPED : 演奏が中断された