我在 windows phone 10 上实现 VoIP 应用程序,我正在使用 VoipPhoneCall。
当用户拨打电话并将应用程序置于后台时,会显示 VoipPhoneCall,并且我希望状态栏中的连接模式正确显示,当连接模式正在拨号时它应该是“拨号”,当连接模式连接时,它应该是持续时间。这是 Viber 的 VoipPhoneCall 状态栏,我也想做。
请帮助我,谢谢
我在 windows phone 10 上实现 VoIP 应用程序,我正在使用 VoipPhoneCall。
当用户拨打电话并将应用程序置于后台时,会显示 VoipPhoneCall,并且我希望状态栏中的连接模式正确显示,当连接模式正在拨号时它应该是“拨号”,当连接模式连接时,它应该是持续时间。这是 Viber 的 VoipPhoneCall 状态栏,我也想做。
请帮助我,谢谢
我希望状态栏中的连接模式正确显示,连接模式拨号时应该是“拨号”,连接模式连接时应该是持续时间
关键是,我们不需要在使用VoipPhoneCall.NotifyCallActive
method之后调用该VoipCallCoordinator.RequestNewOutgoingCall
方法。
我使用了官方的 VoIP 示例来解释。
请参阅VoipTasks项目中的VccCallHelper.cs文件。
请注意NewOutgoingCall
方法(链接):
VoipPhoneCall call = vCC.RequestNewOutgoingCall( context, contactName, serviceName, VoipPhoneCallMedia.Audio);
if (call != null)
{
call.EndRequested += Call_EndRequested;
call.HoldRequested += Call_HoldRequested;
call.RejectRequested += Call_RejectRequested;
call.ResumeRequested += Call_ResumeRequested;
call.NotifyCallActive();//Here!!
Current.VoipCall = call;
Current.StartAudio();
status = true;
}
如果我们调用该VoipPhoneCall.NotifyCallActive
方法,状态栏将显示活动计时器。所以只要注释掉这一行,通知就会在AnswerRequested
方法中发送,见NewIncomingCall
method->Call_AnswerRequested