开发时候遇到要更换指定的提示音,将需要更换的提示音文件放到res文件夹下的raw文件夹里面。
我试过用这个代码播放提示音,代码如下:
MediaPlayer player = new MediaPlayer.create(this,R.raw.test);
player.stare();
我发现这样不会发出声音,打了日志,发现找不到这个提示音文件。
之后我改成
AssetFileDescriptor file = mContext.getResources().openRawResourceFd(
R.raw.test);
MediaPlayer player = new MediaPlayer();
player.setDataSource(file.getFileDescriptor(),file.getStartOffset(),
file.getLength());
file.close();
player.start();
就有声音了。
既然是提示音,我又加了这些设置。
player.setAudioStreamType(AudioManager.STREAM_NOTIFICATION);
player.setLooping(false);//是否一直响
player.prepare();
player.start();