共用方式為


傳送 SMS 訊息

本主題說明如何啟動撰寫 SMS 對話方塊,以允許使用者傳送 SMS 訊息。 您可以在對話方塊顯示之前,預先將資料填入 SMS 的欄位。 在使用者點選 [傳送] 按鈕之前,將不會傳送訊息。

若要呼叫此程式碼,請在套件資訊清單中宣告 chatsmsSendchatSystem 功能。 這些是受限制的功能,但您可以在您的應用程式中使用這些功能。 只有當您想要將應用程式發佈至商店時,才需要核准。 請參閱帳戶類型、位置和費用

啟動撰寫 SMS 對話方塊

建立新的 ChatMessage 物件,並設定您想要在撰寫電子郵件對話方塊中預先填入的資料。 呼叫 ShowComposeSmsMessageAsync 以顯示對話方塊。

private async void ComposeSms(Windows.ApplicationModel.Contacts.Contact recipient,
    string messageBody,
    StorageFile attachmentFile,
    string mimeType)
{
    var chatMessage = new Windows.ApplicationModel.Chat.ChatMessage();
    chatMessage.Body = messageBody;

    if (attachmentFile != null)
    {
        var stream = Windows.Storage.Streams.RandomAccessStreamReference.CreateFromFile(attachmentFile);

        var attachment = new Windows.ApplicationModel.Chat.ChatMessageAttachment(
            mimeType,
            stream);

        chatMessage.Attachments.Add(attachment);
    }

    var phone = recipient.Phones.FirstOrDefault<Windows.ApplicationModel.Contacts.ContactPhone>();
    if (phone != null)
    {
        chatMessage.Recipients.Add(phone.Number);
    }
    await Windows.ApplicationModel.Chat.ChatMessageManager.ShowComposeSmsMessageAsync(chatMessage);
}

您可以使用下列程式碼,來判斷執行應用程式的裝置是否能夠傳送 SMS 訊息。

if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.ApplicationModel.Chat"))
{
   // Call code here.
}

摘要和後續步驟

本主題已經示範了如何啟動撰寫 SMS 對話方塊。 如需選取連絡人來做為 SMS 訊息收件者使用的相關資訊,請參閱選取連絡人。 從 GitHub 下載通用 Windows 應用程式範例,以查看更多使用背景工作來傳送和接收 SMS 訊息方式的相關範例。