You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Windows App SDK WinUI 3应用中实现SMS消息发送?

Windows 11 桌面应用唤起短信窗口方案(Windows App SDK)

以下是几个适配你需求的落地方案,都是开发者实际项目中验证过的思路:

一、利用系统SMS URI协议唤起默认短信应用(推荐)

Windows 11 默认通过「Phone Link」实现跨设备短信联动,系统支持标准的sms: URI协议,能直接唤起短信窗口并预填内容,和Mac「Messages」的体验逻辑一致。

实现代码(C#)

在Windows App SDK项目中,通过Launcher类调用URI即可:

using Windows.System;

// 仅预填消息内容,让用户自行选择收件人
var smsUri = new Uri("sms:?body=你的预填消息内容");
await Launcher.LaunchUriAsync(smsUri);

// 同时指定收件人+预填内容
var smsUriWithRecipient = new Uri("sms:+1234567890?body=你的预填消息内容");
await Launcher.LaunchUriAsync(smsUriWithRecipient);

注意事项

  • 用户需提前通过「Phone Link」完成手机与Windows 11的配对,这是Windows 11用户的常规操作,无需额外安装软件;
  • URI中的中文或特殊字符需做URL编码,例如body=Hello%20世界;
  • 此方式会唤起系统默认短信窗口,用户可修改内容、选择/添加收件人后直接发送,完全匹配你的需求。

二、关于Microsoft Teams的适配说明

你原本计划集成Teams,但Teams的核心是内部即时聊天,而非SMS短信:

  • Teams支持msteams: URI唤起聊天窗口,示例如下:
    msteams://l/chat/0/0?users=user@example.com&message=预填的聊天内容
    
    但这仅能发送Teams内部消息,无法触发真正的SMS短信,仅适合双方都在Teams生态内的场景,和你需要的SMS功能不匹配,因此不推荐用Teams实现该需求。

三、备选:后台短信API(非唤起窗口)

若无需用户交互,仅需后台自动发送SMS,可使用Twilio、阿里云短信等第三方服务API,但这种方式无法让用户选择收件人,仅适合固定场景的自动发送,不符合你当前的需求。

内容的提问来源于stack exchange,提问作者user1094779

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 20:40:03