停止播放默认Android铃声,并在来电时播放用户自定义铃声
我正在尝试播放一个铃声,我将其保存为我的联系人,如下所述停止播放默认Android铃声,并在来电时播放用户自定义铃声,android,ringtone,Android,Ringtone,我正在尝试播放一个铃声,我将其保存为我的联系人,如下所述 Mringtone = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER); Mringtone.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_ALL); Mringtone.putExtra(RingtoneManage
Mringtone = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
Mringtone.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,
RingtoneManager.TYPE_ALL);
Mringtone.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE,
"Select RingTone");
Mringtone.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI,
(Uri) Uri.parse(SelectedRingTone));
this.startActivityForResult(Mringtone, 0);
在“活动结果”中,我获取铃声URI并将其保存到表中
CustomRingToneUri = data.getParcelableExtra(mRingtoneManager.EXTRA_RINGTONE_PICKED_URI);
if (CustomRingToneUri != null) {
int updateRes= getContentResolver().update(URI_MY_TABLE,contactRingTone(CustomRingToneUri.toString()),
"_id = " + "\"" + receivedExtra + "\"", null);
}
因此,它正在按预期正确更新,我正在使用PhoneStateListener来接收传入呼叫,我正在尝试播放从我的表中接收的URI中的铃声,如下所示
Uri ConvertedToUri;
ConvertedToUri = Uri.parse(IncomingNumberRingtonePath);
ringTone=ringToneManager.getRingtone(getApplicationContext(), ConvertedToUri);
if (ringTone.isPlaying())
ringTone.stop();
ringTone.play();
如果我接到来电,我将同时播放默认铃声和保存铃声。我也尝试过使用StopperReviousRingtone。这对我没有帮助。请提供一些可行的方法
谢谢
文卡特拉曼