仍然在播放我的Android应用程序中的音频文件
问题描述:
我是新来的这个Android的东西,我即将创建一个示例应用程序,我可以播放音频文件。所以,我会告诉你我创建的类的一部分:仍然在播放我的Android应用程序中的音频文件
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();
错误是在forward_100hz和backward_200hz ......这是我的音频文件.. 我错过了什么?
答
不知道你在做什么错了,但至少在你传递给MediaPlayer.create的时候你的上下文是空的。
如果您静态使用此方法,则在您调用它时需要从Activity中传递上下文。
欢迎来到堆栈,顺便说一句。不要忘记标记有助于得票的答案。
答
只需在播放音频之前准备好媒体播放器。
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();
}
});
您面临哪个错误? – 2012-01-02 08:39:40