我有一个按钮,我设置了android:soundeffectsenabled="true"。但这不会触发我在onClick()方法中调用的声音效果。
@Override
public void onClick(View v) {
int id = v.getId();
switch (id)
{
case(R.id.button):
button.playSoundEffect(SoundEffectConstants.CLICK);
break;
}
}因此,我想知道该属性是否用于按钮或任何其他视图。
例如,我注意到Whatsapp在不调用MediaPlayer的情况下发挥作用。我可以通过我的HTC One M-8的功能来判断这一点,其中BoomSound图标显示在任何通过MediaPlayer的东西上。
对此有什么想法吗?
谢谢!
发布于 2016-06-02 05:51:25
经过多次尝试和错误之后,我自己找到了答案。请注意,这是特定于我的需求。
如前所述,我想播放一个通知会发出的声音。这意味着对于通知而言,卷控件与正在播放的MediPlayer或AudioManager文件不同。
因此,这样做的方法是:
Uri clickSoundUri = Uri.parse("android.resource://" + **your.package.name** + "/" + **resource of a sound file in the res/raw folder**); Ringtone r = RingtoneManager.getRingtone(context, clickSoundUri); r.play();
就是这样。您可以将这些代码放入按钮的onClick()方法中,并播放声音。这使用户可以选择分别控制音频和通知卷。
https://stackoverflow.com/questions/37536645
复制相似问题