UWP可以使用打电话功能,在PC是用Skype,在手机是直接使用电话功能。

UWP可以通过Skype打电话,那么如何通过应用间通讯,很简单使用Launcher。

Skype电话使用的URI是Skype:(电话号)?call Skype:(skype id)?call格式

我们在电话按钮按下


        private async void Button_OnClick(object sender, RoutedEventArgs e)
        {
            Uri url=new Uri(@"Skype:110?call");
            var areSkypeCall = await Windows.System.Launcher.LaunchUriAsync(url);
            if (areSkypeCall)
            {
                //打成功
            }
        }

打成功是说跳到Skype,用户选择打不打是他的事

一个简单的方法是Uri格式:tel://{phoneNumber},这个电话也可以,按需要判断是手机

如果打电话这么简单,我就不会写这博客,我们还要判断设备。

UWP判断设备可以使用AnalyticsInfo.VersionInfo.DeviceFamily,我们判断设备可以选择使用手机的拨号,这个才是真的电话,垃圾Skype

我们需要先引用Windows Mobile Extensions


            if (Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily
               == "Windows.Mobile")
            {
                Windows.ApplicationModel.Calls.PhoneCallManager.ShowPhoneCallUI("110", "警察");
            }

好像还是很简单,如果发现有问题可以发邮件给我

If you have some problems,you can mail to me lindexi_gd@163.com.

参见:http://stackoverflow.com/questions/34777603/uwp-use-skype-to-call-number

http://stackoverflow.com/questions/39829139/make-telephone-call-from-windows-store-app-c-sharp-winrt


本文会经常更新,请阅读原文: https://dotnet-campus.github.io//post/win10-uwp-%E6%89%93%E7%94%B5%E8%AF%9D.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

知识共享许可协议 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 lindexi (包含链接: https://dotnet-campus.github.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系