Есть ли способ C# для вызова, чтобы узнать, доступно ли Чат/SMS на устройстве Windows10?Откуда вы знаете, есть ли в UWP-устройстве Чат/SMS?
0
A
ответ
0
Вы можете использовать возможности чата даже на устройствах без SIM-карты. Даже Skype может также играть роль по умолчанию SMS приложение на ...
This link дает вам образец
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);
}
Чтобы проверить, если сообщение является SIM, вы должны смотреть на имущество ChatMessage.IsSimMessage
var isSimMessage = chatMessage.isSimMessage;
0
Вы можете попробовать:
if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.ApplicationModel.Chat "))
{
}
Только в том случае, если метод возвращает «истина», внутри него будет реализован код, который указывает, что в этом устройстве доступно SMS/Чат.
В противном случае ваш проект пропустит эту часть кода, так как возможность недоступна на устройстве в случае, если ваше приложение может обрушиться на эти устройства.
Для получения дополнительной информации, можете проверить: this document.