Запуск приложения по умолчанию для URI
Важные API
Узнайте, как запустить приложение по умолчанию для универсального идентификатора ресурса (URI). URI позволяют запускать другое приложение для выполнения определенной задачи. В этом разделе также представлен обзор многих схем URI, встроенных в Windows. Вы также можете запустить пользовательские URI. Дополнительные сведения о регистрации пользовательской схемы URI и обработке активации URI см. в разделе Обработка активации URI.
Схемы URI позволяют открывать приложения, щелкнув гиперссылки. Так же, как вы можете начать новую электронную почту с помощью mailto:, вы можете открыть веб-браузер по умолчанию с помощью http:
В этом разделе описываются следующие схемы URI, встроенные в Windows:
Схема URI | Запуски |
---|---|
bingmaps:, ms-drive-to:, и ms-walk-to: | Приложение "Карты" |
http и https: | Веб-браузер по умолчанию |
mailto: | Приложение электронной почты по умолчанию |
microsoft-edge: | Браузер Microsoft Edge |
ms-call: | Приложение для звонков |
ms-chat: | Приложение для обмена сообщениями |
ms-people: | Приложение "Люди" |
ms-photos: | Приложение "Фотографии" |
ms-recall: | Щелкните, чтобы выполнить (часть отзыв продукции) |
ms-settings: | Приложение "Параметры" |
ms-store: | Приложение Store |
ms-tonepicker: | Средство выбора тонов |
ms-yellowpage: | Приложение "Ближайшие числа" |
msnweather: | Приложение погоды |
Например, следующий URI открывает браузер по умолчанию и отображает веб-сайт Microsoft Bing: https://bing.com/
.
Вы также можете запустить пользовательские схемы URI. Если приложение для обработки этого URI не установлено, можно рекомендовать пользователю установить приложение. Дополнительные сведения см. в разделе Рекомендовать приложение, если нет доступного для обработки URI.
Как правило, приложение не может выбрать запущенное приложение. Пользователь определяет, какое приложение запускается. Несколько приложений могут регистрироваться для обработки одной схемы URI. Исключением из этого является зарезервированная схема URI. Регистрация зарезервированных схем URI игнорируется. Полный список зарезервированных схем URI см. в разделе Обработка активации URI. В случаях, когда несколько приложений, возможно, зарегистрировали одну и ту же схему URI, ваше приложение может рекомендовать запустить определенное приложение. Для получения дополнительной информации см. раздел Рекомендация приложения, если нет доступного для обработки URI.
Вызовите LaunchUriAsync для запуска URI
Используйте метод LaunchUriAsync для запуска URI. При вызове этого метода приложение должно быть приложением переднего плана, то есть оно должно быть видимым для пользователя. Это требование помогает гарантировать, что пользователь остается под контролем. Чтобы выполнить это требование, убедитесь, что все URI запускается непосредственно с пользовательским интерфейсом приложения. Пользователь всегда должен предпринять некоторые действия для запуска URI. Если вы пытаетесь запустить унифицированный идентификатор ресурса (URI), и приложение находится не на переднем плане, запуск завершится ошибкой, и обратный вызов ошибки будет вызван.
Сначала создайте объект System.Uri для представления URI, а затем передайте его в метод LaunchUriAsync. Используйте результат возврата, чтобы узнать, выполнен ли вызов успешно, как показано в следующем примере.
private async void launchURI_Click(object sender, RoutedEventArgs e)
{
// The URI to launch
var uriBing = new Uri(@"http://www.bing.com");
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriBing);
if (success)
{
// URI launched
}
else
{
// URI launch failed
}
}
В некоторых случаях операционная система предложит пользователю узнать, хотите ли они переключить приложения.
Если вы всегда хотите, чтобы этот запрос появлялся, используйте свойство Windows.System.LauncherOptions.TreatAsUntrusted, чтобы операционная система отображала предупреждение.
// The URI to launch
var uriBing = new Uri(@"http://www.bing.com");
// Set the option to show a warning
var promptOptions = new Windows.System.LauncherOptions();
promptOptions.TreatAsUntrusted = true;
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriBing, promptOptions);
Рекомендуйте приложение, если отсутствует приложение для обработки URI
В некоторых случаях у пользователя может быть не установлено приложение для обработки запускаемого URI. По умолчанию операционная система обрабатывает эти случаи, предоставляя пользователю ссылку для поиска соответствующего приложения в магазине. Если вы хотите предоставить пользователю определенную рекомендацию для получения приложения в этом сценарии, вы можете сделать это, передав эту рекомендацию вместе с URI, которую вы запускаете.
Рекомендации также полезны при регистрации нескольких приложений для обработки схемы URI. Порекомендуя определенное приложение, Windows откроет это приложение, если оно уже установлено.
Чтобы сделать рекомендацию, вызовите метод Windows.System.Launcher.LaunchUriAsync(Uri, LauncherOptions) с параметром LauncherOptions.preferredApplicationPackageFamilyName, установленным на имя семейства пакетов приложения в магазине, которое вы хотите рекомендовать. Операционная система использует эту информацию для замены общего параметра для поиска приложения в магазине с определенным параметром для получения рекомендуемого приложения из магазина.
// Set the recommended app
var options = new Windows.System.LauncherOptions();
options.PreferredApplicationPackageFamilyName = "Contoso.URIApp_8wknc82po1e";
options.PreferredApplicationDisplayName = "Contoso URI Ap";
// Launch the URI and pass in the recommended app
// in case the user has no apps installed to handle the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriContoso, options);
Установка остальных предпочтений представления
Исходные приложения, вызывающие LaunchUriAsync, могут запросить, чтобы они остались на экране после вызова URI. По умолчанию Windows пытается совместно использовать все доступное пространство между исходным приложением и целевым приложением, обрабатывающим URI. Исходные приложения могут использовать свойство DesiredRemainingView, чтобы указать операционной системе, что они предпочитают использовать окно приложения, чтобы занять больше или меньше доступного места. DesiredRemainingView также можно использовать для указания того, что исходное приложение не должно оставаться на экране после запуска URI и может быть полностью заменено целевым приложением. Это свойство указывает только предпочтительный размер окна вызывающего приложения. Он не указывает поведение других приложений, которые могут также находиться на экране одновременно.
Примечание Windows учитывает несколько различных факторов при определении окончательного размера окна исходного приложения, например предпочтения исходного приложения, количества приложений на экране, ориентации экрана и т. д. Задав DesiredRemainingView, вы не гарантируете определенное поведение в окне для исходного приложения.
// Set the desired remaining view.
var options = new Windows.System.LauncherOptions();
options.DesiredRemainingView = Windows.UI.ViewManagement.ViewSizePreference.UseLess;
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriContoso, options);
Схемы URI
Ниже описаны различные схемы URI.
Схема URI для вызова приложения
Используйте схему URI ms-call: для запуска приложения 'Вызов'.
Схема URI | Результат |
---|---|
ms-call:settings |
Вызывает страницу параметров приложения. |
Схема URI электронной почты
Используйте mailto: схему URI для запуска почтового приложения по умолчанию.
Схема URI | Результаты |
---|---|
mailto: |
Запускает приложение электронной почты по умолчанию. |
mailto:\[email address\] |
Запускает почтовое приложение и создает новое сообщение с указанным адресом электронной почты в строке "To". Обратите внимание, что сообщение электронной почты не отправляется, пока пользователь не нажимает кнопку отправки. |
Схема URI HTTP
Используйте схему http: URI для запуска веб-браузера по умолчанию.
Схема URI | Результаты |
---|---|
http: |
Запускает веб-браузер по умолчанию. |
Схемы URI для приложения "Карты"
Используйте URI схемы bingmaps:, ms-drive-to:и ms-walk-to:, чтобы запустить в приложении «Карты Windows» определенные карты, направления и результаты поиска. Например, следующий URI открывает приложение "Карты Windows" и отображает карту, центрированную по Нью-Йорку.
bingmaps:?cp=40.726966~-74.006076
Дополнительные сведения см. в статье Запуск приложения "Карты Windows". Сведения об использовании элемента управления картой в вашем приложении см. в разделе Отображение карт с 2D, 3D и видами Streetside.
Схема URI приложения для обмена сообщениями
Используйте схему URI ms-chat: для запуска приложения обмена сообщениями Windows.
Схема URI | Результаты |
---|---|
ms-chat: |
Запускает приложение для обмена сообщениями. |
ms-chat:?ContactID={contacted} |
Позволяет запускать приложение для обмена сообщениями с данными конкретного контакта. |
ms-chat:?Body={body} |
Позволяет запускать приложение обмена сообщениями со строкой, используемой в качестве содержимого сообщения. |
ms-chat:?Addresses={address}&Body={body} |
Позволяет приложению обмена сообщениями запускаться с информацией о конкретных адресах и строкой, используемой в качестве содержимого сообщения. Примечание. Адреса можно объединить. |
ms-chat:?TransportId={transportId} |
Позволяет запускать приложение обмена сообщениями с определенным идентификатором транспорта. |
Формат URI выбора тонов
Используйте ms-tonepicker: схему URI для выбора мелодий, предупреждений и системных тонов. Вы также можете сохранить новые мелодии звонка и получить отображаемое имя тона.
Схема URI | Результаты |
---|---|
ms-tonepicker: |
Выберите мелодии звонка, будильники и системные тоны. |
Параметры передаются через ValueSet API LaunchURI. Дополнительные сведения см. в статье Выбор и сохранение тонов с помощью схемы URI ms-tonepicker.
Схема URI приложения "Ближайшие номера"
Используйте ms-yellowpage: схему URI для запуска приложения "Номера рядом".
Схема URI | Результаты |
---|---|
ms-yellowpage:?input=\[keyword\]&method=\[String or T9\] |
Запускает приложение "Ближайшие номера".input означает ключевое слово, которое вы хотите найти.method относится к типу поиска (строка или поиск T9).Если method — это T9 (тип клавиатуры), то keyword должна быть числовой строкой, которая соответствует буквам клавиатуры T9 для поиска.Если method String , тогда keyword является ключевым словом для поиска. |
Схема URI приложения "Люди"
Используйте схему ms-people: URI для запуска приложения «Люди». Дополнительные сведения см. в разделе Запуск приложения "Люди".
Схема URI приложения "Фотографии"
Используйте ms-photo: схему URI для запуска приложения "Фотографии" для просмотра изображения или редактирования видео. Например:
Чтобы посмотреть изображение: ms-photos:viewer?fileName=c:\users\userName\Pictures\image.jpg
Или изменить видео: ms-photos:videoedit?InputToken=123abc&Action=Trim&StartTime=01:02:03
Заметка
URI для редактирования видео или отображения изображения доступны только на рабочем столе.
Схема URI | Результаты |
---|---|
ms-photos:viewer?fileName={filename} |
Запускает приложение "Фотографии", чтобы просмотреть указанное изображение. {filename} — это полный путь имени файла. Например, c:\users\userName\Pictures\ImageToView.jpg |
ms-photos:videoedit?InputToken={input token} |
Запускает приложение "Фотографии" в режиме редактирования видео для файла, представленного маркером файла. требуется InputToken. Используйте SharedStorageAccessManager, чтобы получить маркер для файла. |
ms-photos:videoedit?Action={action} |
Параметр, указывающий режим редактирования видео для открытия приложения "Фотографии", где {action} является одним из следующих: SlowMotion, FrameExtraction, Trim, View, Рукописный. требуется действие . |
ms-photos:videoedit?StartTime={timespan} |
Необязательный параметр, указывающий, где начать воспроизведение видео.
{timespan} должен быть в формате "hh:mm:ss.ffff" . Если значение не указано, по умолчанию используется 00:00:00.0000 |
Схема URI приложения «Настройки»
Используйте схему ms-settings: схему URI, чтобы запустить приложение параметров Windows. Запуск приложения "Параметры" является важной частью написания приложения с учетом конфиденциальности. Если приложение не может получить доступ к конфиденциальному ресурсу, рекомендуется предоставить пользователю удобную ссылку на параметры конфиденциальности для этого ресурса. Например, следующий URI открывает приложение "Параметры" и отображает параметры конфиденциальности камеры.
ms-settings:privacy-webcam
Дополнительные сведения см. в разделе Откройте приложение 'Параметры Windows' и Руководства по приложениям, учитывающим конфиденциальность.
Схема URI приложения Магазина
Используйте схему ms-windows-store: URI для запуска приложения UWP. Откройте страницы сведений о продукте, страницы проверки продукта и страницы поиска и т. д. Например, следующий URI открывает приложение UWP и запускает домашнюю страницу Магазина.
ms-windows-store://home/
Дополнительные сведения см. в разделе Запуск приложения UWP.
Схема URI приложения погоды
Используйте схему URI msnweather: для запуска приложения "Погода".
Схема URI | Результаты |
---|---|
msnweather://forecast?la=\[latitude\]&lo=\[longitude\] |
Запускает приложение "Погода" на странице прогноза на основе географических координат расположения.latitude относится к широте расположения.longitude относится к долготе расположения. |
Схема URI Microsoft Edge
Используйте microsoft-edge: схему URI для запуска браузера Microsoft Edge на указанный URL-адрес.
Схема URI | Результаты |
---|---|
microsoft-edge:https://example.com/ |
Открывает браузер Microsoft Edge и переходит к https://example.com/ |