我已经使用PJSIP(PJSUA2)实现了VOIP项目。

一切都很好,但是当我调用某个人时,我没有听到铃声。但另一端,他正在接听电话。

在这里,我们无法判断该调用是否正在连接到其他调用。

请帮我。谢谢你。

最佳答案

自己产生声音。您可以使用android.media.ToneGenerator。像这样的东西:

ToneGenerator toneGenerator = new ToneGenerator(AudioManager.STREAM_VOICE_CALL, 100);
toneGenerator.startTone(ToneGenerator.TONE_CDMA_NETWORK_USA_RINGBACK, 1000);

编辑

您可以在notifyCallState中获取CallInfo。
CallInfo ci = call.getInfo();
if (ci.getState() == pjsip_inv_state.PJSIP_INV_STATE_EARLY
    && ci.getRole() == pjsip_role_e.PJSIP_ROLE_UAC
    && ci.getLastReason().equals("Ringing")) {
     toneGeneratorHelper.startRingBack();
} else {
  toneGeneratorHelper.stopRingBack();
}

对于重复的音调,您可以将处理程序与postDelayed一起使用。为此创建帮助器类。

关于android - (180振铃)连接调用android pjsip(pjsua2)时无铃声,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30952895/

10-11 20:16