Поделиться через


Отправка SMS-сообщения

В этом разделе показано, как запустить диалоговое окно создания SMS, чтобы разрешить пользователю отправлять SMS-сообщение. Перед отображением диалогового окна можно предварительно заполнить поля SMS данными. Сообщение не будет отправлено, пока пользователь не нажимает кнопку отправки.

Чтобы вызвать этот код, объявите возможности чата, smsSend и chatSystem в манифесте пакета. Это ограниченные возможности, но их можно использовать в приложении. Вам нужно утверждение только в том случае, если вы планируете опубликовать приложение в Магазине. См . типы учетных записей, расположения и сборы.

Запуск диалогового окна создания 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-сообщения см. в разделе "Выбор контактов". Скачайте примеры универсальных приложений Windows из GitHub, чтобы просмотреть дополнительные примеры отправки и получения SMS-сообщений с помощью фоновой задачи.