我希望我的c#UWP App支持主叫号码。
当我在W10手机上时,我希望它使用W10 PhoneCall API正常(这是有效的)
Windows.ApplicationModel.Calls.PhoneCallManager.ShowPhoneCallUI(number, name);
但在W10桌面/ PC上我没有GSM提供商,所以我想,也许用Skype来拨号,用户按下。
这可能通过UWP吗?也许类似于打开网站:
await Windows.System.Launcher.LaunchUriAsync(new Uri(website));
答案 0 :(得分:9)
是的,您可以使用Launch the default app for a URI从您的应用中打开Skype,这是对的。
关于Uri我们可以使用的问题,您可以参考Skype development。
以下是示例代码,这将打开" Skype"并致电" Echo / Sound Test Service":
private async void OnClick(object sender, RoutedEventArgs e)
{
var uriSkype = new Uri(@"Skype:echo123?call");
// Set the option to show a warning
var promptOptions = new Windows.System.LauncherOptions();
promptOptions.TreatAsUntrusted = true;
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriSkype, promptOptions);
if (success)
{
// URI launched
}
else
{
// URI launch failed
}
}
如果您想拨打电话号码,可以使用:
var uriSkype = new Uri(@"Skype:(number)?call");
或者你也可以通过skype id调用:
var uriSkype = new Uri(@"Skype:(skype id)?call");
此解决方案仅适用于PC上已安装Skype的情况。如果系统无法在您的PC上找到Skype,它将打开商店并显示已注册此协议的推荐应用程序。