如何播放从 Android 中的 Assets 文件夹加载的 WAV 文件?
How to play a WAV file loaded from Assets folder in Android?
我正在尝试播放 assets
文件夹中 Android 中的 .wav
音频。
问题是没有错误但是没有播放音频。
这是我的代码
AssetFileDescriptor afd = null;
try {
afd = getAssets().openFd("success.wav");
player = new MediaPlayer();
player.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength());
player.setLooping(false);
player.prepare();
player.start();
} catch (IOException e) {
e.printStackTrace();
}
你试过吗?
MediaPlayer mediaPlayer = null;
public void playSound(final Context context, final String fileName) {
mediaPlayer = new MediaPlayer();
try {
AssetFileDescriptor afd = context.getAssets().openFd(fileName);
mediaPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
afd.close();
mediaPlayer.prepare();
} catch (final Exception e) {
e.printStackTrace();
}
mediaPlayer.start();
}
}
你的代码没问题,我检查过,可以正常工作。
- 请确保
\assets
文件夹已放置
正确(\app\src\main\assets
)
- 检查您的设备音量。
- 在 PC 媒体播放器中播放
success.wav
并确保可以听到。
注:
使用设备音量控制:
setVolumeControlStream(AudioManager.STREAM_MUSIC);
如果您的应用与媒体相关,请在 activity 的 onResume() 中使用 setVolumeControlStream API 或分段并使用设备音量硬键到 increase/decrease 音量。这将应用程序设置为仅修改 stream_music volume /media volume,否则它将修改 ring volume。
参考:https://developer.android.com/guide/topics/media-apps/volume-and-earphones
我正在尝试播放 assets
文件夹中 Android 中的 .wav
音频。
问题是没有错误但是没有播放音频。
这是我的代码
AssetFileDescriptor afd = null;
try {
afd = getAssets().openFd("success.wav");
player = new MediaPlayer();
player.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength());
player.setLooping(false);
player.prepare();
player.start();
} catch (IOException e) {
e.printStackTrace();
}
你试过吗?
MediaPlayer mediaPlayer = null;
public void playSound(final Context context, final String fileName) {
mediaPlayer = new MediaPlayer();
try {
AssetFileDescriptor afd = context.getAssets().openFd(fileName);
mediaPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
afd.close();
mediaPlayer.prepare();
} catch (final Exception e) {
e.printStackTrace();
}
mediaPlayer.start();
}
}
你的代码没问题,我检查过,可以正常工作。
- 请确保
\assets
文件夹已放置 正确(\app\src\main\assets
) - 检查您的设备音量。
- 在 PC 媒体播放器中播放
success.wav
并确保可以听到。
注: 使用设备音量控制:
setVolumeControlStream(AudioManager.STREAM_MUSIC);
如果您的应用与媒体相关,请在 activity 的 onResume() 中使用 setVolumeControlStream API 或分段并使用设备音量硬键到 increase/decrease 音量。这将应用程序设置为仅修改 stream_music volume /media volume,否则它将修改 ring volume。 参考:https://developer.android.com/guide/topics/media-apps/volume-and-earphones