This commit is contained in:
chenbin
2021-04-29 09:19:35 +08:00
parent 38b701a4ea
commit de8bf0b61c
4 changed files with 29 additions and 5 deletions

View File

@@ -1,4 +0,0 @@
fileFormatVersion: 2
guid: d0d568b30e2f74409bc39d572cd4e60d
DefaultImporter:
userData:

View File

@@ -3,6 +3,10 @@ package com.tianrun.sipcall;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor;
import android.media.Ringtone;
import android.media.RingtoneManager;
import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
@@ -325,5 +329,21 @@ public class SipEngine implements BluetelInterface {
return myBluetelEngine.Holder(isHolder, callid); return myBluetelEngine.Holder(isHolder, callid);
} }
/**
* 播放系统默认来电铃声
*
* @return MediaPlayer对象
*
* @throws Exception
*/
public void PlaydefaultCallMediaPlayer(Context context) {
Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
Ringtone r = RingtoneManager.getRingtone(context, notification);
r.play();
}
public void StopdefaultCallMediaPlayer(Context context) {
Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
Ringtone r = RingtoneManager.getRingtone(context, notification);
r.stop();
}
} }

View File

@@ -193,6 +193,9 @@ public class InCallActivity extends TrBaseActivity implements OnClickListener {
if (incall_answer.getVisibility() == View.VISIBLE && selfCall) { if (incall_answer.getVisibility() == View.VISIBLE && selfCall) {
incall_answer.setVisibility(View.GONE); incall_answer.setVisibility(View.GONE);
SipEngine.getInstance().answer(callid); SipEngine.getInstance().answer(callid);
SipEngine.getInstance().StopdefaultCallMediaPlayer(this);
} else {
SipEngine.getInstance().PlaydefaultCallMediaPlayer(this);
} }
} }
@@ -333,6 +336,7 @@ public class InCallActivity extends TrBaseActivity implements OnClickListener {
case R.id.incall_answer: case R.id.incall_answer:
incall_answer.setVisibility(View.GONE); incall_answer.setVisibility(View.GONE);
SipEngine.getInstance().answer(callid); SipEngine.getInstance().answer(callid);
SipEngine.getInstance().StopdefaultCallMediaPlayer(this);
break; break;
} }
} }

View File

@@ -527,7 +527,10 @@ public class InCallMeetingActivity extends TrBaseActivity implements OnClickList
//控件显示号码,来电,去电,通话中... //控件显示号码,来电,去电,通话中...
if (incall_answer.getVisibility() == View.VISIBLE && selfCall) { if (incall_answer.getVisibility() == View.VISIBLE && selfCall) {
incall_answer.setVisibility(View.GONE); incall_answer.setVisibility(View.GONE);
SipEngine.getInstance().StopdefaultCallMediaPlayer(this);
SipEngine.getInstance().answer(callid); SipEngine.getInstance().answer(callid);
} else {
SipEngine.getInstance().PlaydefaultCallMediaPlayer(this);
} }
} }
@@ -687,6 +690,7 @@ public class InCallMeetingActivity extends TrBaseActivity implements OnClickList
incall_mute.setVisibility(View.VISIBLE); incall_mute.setVisibility(View.VISIBLE);
} }
SipEngine.getInstance().answer(callid); SipEngine.getInstance().answer(callid);
SipEngine.getInstance().StopdefaultCallMediaPlayer(this);
break; break;
case R.id.incall_mute: case R.id.incall_mute:
muteAll(v); muteAll(v);