我想在用户点击按钮时添加声音效果。 我试过这个:
case R.id.b_all_addresses_addAddress:
// Getting the user sound settings
AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
float actualVolume = (float) audioManager
.getStreamVolume(AudioManager.STREAM_MUSIC);
float maxVolume = (float) audioManager
.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
float volume = actualVolume / maxVolume;
if (loaded)
soundPool.play(soundID, volume, volume, 1, 1, 1f);
else
Toast.makeText(this, "could I hate you God more?", Toast.LENGTH_SHORT).show();
在我的创作中我做到了这一点:
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0);
soundPool.setOnLoadCompleteListener(new OnLoadCompleteListener() {
@Override
public void onLoadComplete(SoundPool soundPool, int sampleId,
int status) {
loaded = true;
}
});
soundID = soundPool.load(this, R.raw.thip, 1);
声音只有6 KB。
我听不到声音
答案 0 :(得分:0)
你回收量的价值是什么?
它们应介于0.1和0.99之间。尝试使用0.5作为硬编码设置,看看是否有效。我依稀记得有人在这里报告过SoundPool中的一个“bug”,这意味着0和1意味着“静音”,你的音量必须介于这两个值之间才能被听到。
另外:你的声音格式是什么?并非所有手机都能播放所有格式。有些人需要ogg,有些人对WAV很好。
这对我来说适用于HTC Sensation XE,Android 4.03: * WAV * 2频道 * 16位PCM * 44.1kHz的