我希望我的c#UWP App支持主叫号码.
当我使用W10手机时我希望它使用W10 PhoneCall API正常(这是有效的)
Windows.ApplicationModel.Calls.PhoneCallManager.ShowPhoneCallUI(number, name);
Run Code Online (Sandbox Code Playgroud)
但是在W10桌面/ PC上我不会有GSM提供商,所以我想,也许用Skype来拨号,用户按下.
这可能通过UWP吗?也许类似打开网站:
await Windows.System.Launcher.LaunchUriAsync(new Uri(website));
Run Code Online (Sandbox Code Playgroud)
是的,这是可能的,你是正确的使用启动URI的默认应用程序从您的应用程序打开Skype.
对于我们可以使用Uri的问题,您可以参考Skype开发.
这是示例代码,这将打开"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
}
}
Run Code Online (Sandbox Code Playgroud)
如果您想拨打电话号码,可以使用:
var uriSkype = new Uri(@"Skype:(number)?call");
Run Code Online (Sandbox Code Playgroud)
或者你也可以通过skype id来调用:
var uriSkype = new Uri(@"Skype:(skype id)?call");
Run Code Online (Sandbox Code Playgroud)
此解决方案仅适用于PC上已安装Skype的情况.如果系统无法在您的PC上找到Skype,它将打开商店并显示已注册此协议的推荐应用程序.