2012-01-02 12 views
0

私はこのアンドロイドのことが初めてで、私はオーディオファイルを再生できるサンプルアプリを作成しようとしています。私のオーディオファイルでエラーがforward_100hzとbackward_200hzにあるまだアンドロイドアプリでオーディオファイルを再生中

public class BBOX { 
    public static final int FORWARD = 0x09; 
    public static final int BACKWARD = 0x06; 
    public static final int CLOCKWISE = 0x05; 
    public static final int COUNTERCLOCKWISE = 0x0a; 
    public static final int FIRE = 0x10; 

    static MediaPlayer audioControl; 

    public static BBOX send(int data){ 

     Context context; 
     if(data == FORWARD){ 
      audioControl = MediaPlayer.create(context, R.raw.forward_100hz); 
      audioControl.start(); 
     } 
     else if(data == BACKWARD){ 
      audioControl = MediaPlayer.create(context, R.raw.backward_200hz); 
      audioControl.start(); 

... .. は、私が何を欠場でしたので、私はあなたは私が作成したクラスの一部紹介しますか!

+0

あなたが直面しているエラーはありますか? –

答えて

0

他に何が間違っているのか分かりませんが、少なくともMediaPlayer.createに渡すコンテキストはnullです。

このメソッドを静的に使用している場合、呼び出すときにアクティビティからコンテキストを渡す必要があります。

ようこそ、btw。票を投じて役立つ回答に印を付けることを忘れないでください。

0

オーディオを再生する前に、メディアプレーヤーを準備するだけです。

try { 
     audioControl = MediaPlayer.create(context, R.raw.forward_100hz); 
     audioControl.prepare(); 
    } catch (IllegalStateException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

    audioControl.setOnPreparedListener(new OnPreparedListener() { 

     @Override 
     public void onPrepared(MediaPlayer paramMediaPlayer) { 
      paramMediaPlayer.start(); 
     } 
    }); 
関連する問題