Iniciar la aplicación predeterminada para un URILaunch the default app for a URI

API importantesImportant APIs

Aprende a iniciar la aplicación predeterminada de un identificador de recursos uniforme (URI).Learn how to launch the default app for a Uniform Resource Identifier (URI). Los URI te permiten iniciar otra aplicación para realizar una tarea específica.URIs allow you to launch another app to perform a specific task. En este tema también se proporciona una descripción general de los muchos esquemas de URI integrados en Windows.This topic also provides an overview of the many URI schemes built into Windows. También puedes iniciar el URI personalizado.You can launch custom URIs too. Para obtener más información sobre cómo registrar un esquema de URI personalizado y controlar la activación de URI, consulta Administración de la activación de URI.For more info about registering a custom URI scheme and handling URI activation, see Handle URI activation.

Los esquemas de URI te permiten abrir aplicaciones haciendo clic en hipervínculos.URI schemes let you open apps by clicking hyperlinks. Al igual que puedes iniciar un nuevo correo electrónico con mailto:, puedes abrir el explorador web predeterminado con http:.Just as you can start a new email using mailto:, you can open the default web browser using http:

En este tema se describen los siguientes esquemas de URI integrados en Windows:This topic describes the following URI schemes built into Windows:

Esquema de URIURI Scheme IniciaLaunches
bingmaps:, MS-Drive-to: y MS-Walk-to: bingmaps:, ms-drive-to:, and ms-walk-to: Aplicación MapasMaps app
httphttp: Explorador web predeterminadoDefault web browser
mailtomailto: Aplicación de correo electrónico predeterminadaDefault email app
ms-call:ms-call: Aplicación de llamadaCall app
ms-chat:ms-chat: Aplicación MensajesMessaging app
ms-people:ms-people: Aplicación ContactosPeople app
MS-fotos:ms-photos: Aplicación FotosPhotos app
MS-Settings:ms-settings: Aplicación ConfiguraciónSettings app
ms-store:ms-store: Aplicación de la tiendaStore app
ms-tonepicker:ms-tonepicker: Selector de tonoTone picker
ms-yellowpage:ms-yellowpage: Aplicación de números cercanosNearby Numbers app
msnweather:msnweather: Aplicación meteorológicaWeather app

Por ejemplo, el siguiente URI abre el explorador predeterminado y muestra el sitio web de Bing.For example, the following URI opens the default browser and displays the Bing web site.

https://bing.com

También puedes iniciar esquemas de URI personalizados.You can also launch custom URI schemes too. Si no hay ninguna aplicación instalada para controlar ese URI, puedes recomendar una aplicación para que la instale el usuario.If there is no app installed to handle that URI, you can recommend an app for the user to install. Para obtener más información, consulte recomendar una aplicación si no hay ninguna disponible para controlar el URI.For more info, see Recommend an app if one is not available to handle the URI.

En general, la aplicación no puede seleccionar qué aplicación se inicia,In general, your app can't select the app that is launched. sino que es el usuario quien la determina.The user determines which app is launched. Se puede registrar más de una aplicación para controlar el mismo esquema de URI.More than one app can register to handle the same URI scheme. La excepción a esto son los esquemas de URI reservados.The exception to this is for reserved URI schemes. Los registros de esquemas de URI reservados se ignoran.Registrations of reserved URI schemes are ignored. Para obtener una lista completa de los esquemas de URI reservados, consulta Administración de la activación de URI.For the full list of reserved URI schemes, see Handle URI activation. En casos en los que más de una aplicación puede haber registrado el mismo esquema de URI, la aplicación puede recomendar iniciar una aplicación específica.In cases where more than one app may have registered the same URI scheme, your app can recommend a specific app to be launched. Para obtener más información, consulte recomendar una aplicación si no hay ninguna disponible para controlar el URI.For more info, see Recommend an app if one is not available to handle the URI.

Llamar a LaunchUriAsync para iniciar un URICall LaunchUriAsync to launch a URI

Usa el método LaunchUriAsync para iniciar un URI.Use the LaunchUriAsync method to launch a URI. Cuando llames a este método, tu aplicación debe ser la aplicación en primer plano; es decir, debe estar visible para el usuario.When you call this method, your app must be the foreground app, that is, it must be visible to the user. Este requisito permite asegurar que el usuario permanezca en control.This requirement helps ensure that the user remains in control. Para cumplir este requisito, asegúrate de enlazar todos los inicios de URI directamente a la interfaz de usuario de la aplicación.To meet this requirement, make sure that you tie all URI launches directly to the UI of your app. El usuario siempre debe tener que realizar alguna acción para iniciar el URI.The user must always take some action to initiate a URI launch. Si intentas iniciar un URI y tu aplicación no está en primer plano, se producirá un error en el inicio y se invocará a la devolución de llamada de error.If you attempt to launch a URI and your app isn't in the foreground, the launch will fail and your error callback will be invoked.

Primero, crea un objeto System.Uri para que represente el URI, y luego pásalo al método LaunchUriAsync.First create a System.Uri object to represent the URI, then pass that to the LaunchUriAsync method. Usa el resultado devuelto para ver si la llamada se realizó correctamente, como se muestra en el siguiente ejemplo.Use the return result to see if the call succeeded, as shown in the following example.

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
   }
}

En algunos casos, el sistema operativo le pedirá al usuario que compruebe si realmente desea cambiar de aplicación.In some cases, the operating system will prompt the user to see if they actually want to switch apps.

Un cuadro de diálogo de advertencia superpuesto en un fondo atenuado de la aplicación.

Si siempre desea que se produzca este mensaje, use el Windows.SysTEM. Propiedad LauncherOptions. TreatAsUntrusted para indicar al sistema operativo que debe mostrar una advertencia.If you always want this prompt to occur, use the Windows.System.LauncherOptions.TreatAsUntrusted property to tell the operating system to display a warning.

// 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);

Recomendar una aplicación si no hay ninguna disponible para administrar el URIRecommend an app if one is not available to handle the URI

En algunos casos, es posible que el usuario no tenga instalada una aplicación para administrar el URI que estás iniciando.In some cases, the user might not have an app installed to handle the URI that you are launching. Si esto sucede, de manera predeterminada, el sistema operativo ofrece un vínculo al usuario para que busque una aplicación apropiada en la Tienda.By default, the operating system handles these cases by providing the user with a link to search for an appropriate app on the store. Si quieres recomendar al usuario qué aplicación comprar en este escenario, debes pasar la recomendación junto con el URI que estás iniciando.If you want to give the user a specific recommendation for which app to acquire in this scenario, you can do so by passing that recommendation along with the URI that you are launching.

Las recomendaciones también son útiles cuando más de una aplicación se ha registrado para controlar un esquema de URI.Recommendations are also useful when more than one app has registered to handle a URI scheme. Al recomendar una aplicación específica, Windows abrirá esa aplicación si ya está instalada.By recommending a specific app, Windows will open that app if it is already installed.

Para hacer una recomendación, llama al método Windows.System.Launcher.LaunchUriAsync(Uri, LauncherOptions) con LauncherOptions.preferredApplicationPackageFamilyName establecido con el nombre de familia de paquete correspondiente a la aplicación de la Tienda que quieras recomendar.To make a recommendation, call the Windows.System.Launcher.LaunchUriAsync(Uri, LauncherOptions) method with LauncherOptions.preferredApplicationPackageFamilyName set to the package family name of the app in the store that you want to recommend. El sistema operativo usará esta información para reemplazar la opción general de buscar una aplicación por una opción específica para comprar la aplicación recomendada en la Tienda.The operating system uses this info to replace the general option to search for an app in the store with a specific option to acquire the recommended app from the store.

// 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);

Establecer las preferencias de visualización restantesSet remaining view preference

Las aplicaciones de origen que llaman a LaunchUriAsync pueden solicitar permanecer en pantalla después de iniciarse un URI.Source apps that call LaunchUriAsync can request that they remain on screen after a URI launch. Windows intenta compartir de manera predeterminada todo el espacio disponible entre la aplicación de origen y la aplicación de destino que controla el URI.By default, Windows attempts to share all available space equally between the source app and the target app that handles the URI. Las aplicaciones de origen pueden usar la propiedad DesiredRemainingView para indicar al sistema operativo que prefieren que la ventana de la aplicación ocupe más o menos espacio del que hay disponible.Source apps can use the DesiredRemainingView property to indicate to the operating system that they prefer their app window to take up more or less of the available space. También se puede usar DesiredRemainingView para indicar que la aplicación de origen no necesita permanecer en pantalla después del inicio del URI y puede sustituirse por completo por la aplicación de destino.DesiredRemainingView can also be used to indicate that the source app doesn't need to remain on screen after the URI launch and can be completely replaced by the target app. Esta propiedad especifica únicamente el tamaño de ventana preferido de la aplicación que llama;This property only specifies the preferred window size of the calling app. no especifica el comportamiento de ninguna otra aplicación que también esté en pantalla al mismo tiempo.It doesn't specify the behavior of other apps that may happen to also be on screen at the same time.

Nota:    Windows tiene en cuenta varios factores diferentes cuando determina el tamaño de ventana final de la aplicación de origen, por ejemplo, la preferencia de la aplicación de origen, el número de aplicaciones en pantalla, la orientación de la pantalla, etc.Note  Windows takes into account multiple different factors when it determines the source app's final window size, for example, the preference of the source app, the number of apps on screen, the screen orientation, and so on. Aunque establezcas la propiedad DesiredRemainingView, no se garantiza un comportamiento de ventanas específico para la aplicación de origen.By setting DesiredRemainingView, you aren't guaranteed a specific windowing behavior for the source app.

// 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);

Esquemas de URIURI Schemes

A continuación se describen los diversos esquemas de URI.The various URI schemes are described below.

Llamar al esquema de URI de la aplicaciónCall app URI scheme

Use el esquema de URI MS-Call: para iniciar la aplicación de llamada.Use the ms-call: URI scheme to launch the Call app.

Esquema de URIURI Scheme ResultadoResult
ms-call:settingsms-call:settings Llama a la página de configuración de la aplicación.Calls app settings page.

Esquema de URI de correo electrónicoEmail URI scheme

Use el esquema mailto: URI para iniciar la aplicación de correo electrónico predeterminada.Use the mailto: URI scheme to launch the default mail app.

Esquema de URIURI Scheme ResultsResults
mailto:mailto: Inicia la aplicación de correo electrónico predeterminada.Launches the default email app.
mailto: [ dirección de correo electrónico]mailto:[email address] Inicia la aplicación de correo electrónico y crea un mensaje nuevo con la dirección de correo electrónico especificada en la línea "Para".Launches the email app and creates a new message with the specified email address on the To line. Ten en cuenta que el correo electrónico no se envía hasta que el usuario presiona "Enviar".Note that the email is not sent until the user taps send.

Esquema de URI de HTTPHTTP URI scheme

Use el esquema http: URI para iniciar el explorador Web predeterminado.Use the http: URI scheme to launch the default web browser.

Esquema de URIURI Scheme ResultsResults
http:http: Abre el explorador web predeterminado.Launches the default web browser.

Esquemas de URI de la aplicación MapasMaps app URI schemes

Use los esquemas bingmaps:, MS-Drive-to: y MS-Walk-to: URI para iniciar la aplicación de Windows Maps en mapas, direcciones y resultados de búsqueda específicos.Use the bingmaps:, ms-drive-to:, and ms-walk-to: URI schemes to launch the Windows Maps app to specific maps, directions, and search results. Por ejemplo, el siguiente URI abre la aplicación Mapas de Windows y muestra un mapa centrado sobre la ciudad de Nueva York.For example, the following URI opens the Windows Maps app and displays a map centered over New York City.

bingmaps:?cp=40.726966~-74.006076

Ejemplo de la aplicación Mapas de Windows.

Para obtener más información, consulta Iniciar la aplicación Mapas de Windows.For more info, see Launch the Windows Maps app. Para usar el control de mapa en tu propia aplicación, consulta Mostrar mapas con vistas 2D, 3D y Streetside.To use the map control in your own app, see Display maps with 2D, 3D, and Streetside views.

Esquema de URI de la aplicación MensajesMessaging app URI scheme

Use el esquema MS-chat: URI para iniciar la aplicación de mensajería de Windows.Use the ms-chat: URI scheme to launch the Windows Messaging app.

Esquema de URIURI scheme ResultsResults
ms-chat:ms-chat: Inicia la aplicación de mensajería.Launches the Messaging app.
ms-chat:?ContactID={contacted}ms-chat:?ContactID={contacted} Permite que la aplicación de mensajería se inicie con información de un contacto determinado.Allows the messaging application to be launched with a particular contact’s information.
ms-chat:?Body={body}ms-chat:?Body={body} Permite que la aplicación de mensajería se inicie con una cadena que se usará como el contenido del mensaje.Allows the messaging application to be launched with a string to use as the content of the message.
ms-chat:?Addresses={address}&Body={body}ms-chat:?Addresses={address}&Body={body} Permite que la aplicación de mensajería se inicie con información de unas direcciones concretas, y con una cadena que se usará como el contenido del mensaje.Allows the messaging application to be launched with a particular addresses' information, and with a string to use as the content of the message. Nota: Las direcciones se pueden concatenar.Note: Addresses can be concatenated.
ms-chat:?TransportId={transportId}ms-chat:?TransportId={transportId} Permite que la aplicación de mensajería se inicie con un identificador de transporte concreto.Allows the messaging application to be launched with a particular transport ID.

Esquema de URI de selector de tonoTone picker URI scheme

Use el esquema MS-tonepicker: URI para elegir tonos, alarmas y tonos del sistema.Use the ms-tonepicker: URI scheme to choose ringtones, alarms, and system tones. También puedes guardar nuevos tonos y obtener el nombre para mostrar de un tono.You can also save new ringtones and get the display name of a tone.

Esquema de URIURI Scheme ResultsResults
ms-tonepicker:ms-tonepicker: Elige tonos, alarmas y tonos del sistema.Pick ringtones, alarms, and system tones.

Los parámetros se pasan a través de una clase ValueSet a la API LaunchURI.Parameters are passed via a ValueSet to the LaunchURI API. Consulta Elegir y guardar los tonos con el esquema URI ms-tonepicker para obtener más información.See Choose and save tones using the ms-tonepicker URI scheme for details.

Esquema de URI de la aplicación de números cercanosNearby Numbers app URI scheme

Use el esquema MS-yellowpage: URI para iniciar la aplicación de números cercanos.Use the ms-yellowpage: URI scheme to launch the Nearby Numbers app.

Esquema de URIURI Scheme ResultsResults
MS-yellowpage:? Input = [ keyword ]&Method = [ String o T9]ms-yellowpage:?input=[keyword]&method=[String or T9] Inicia la aplicación de números cercanos.Launches the Nearby Numbers app.
input hace referencia a la palabra clave que desea buscar.input refers to the keyword you want to search.
method hace referencia al tipo de búsqueda (cadena o búsqueda T9).method refers to the type of search (string or T9 search).
Si methodes T9 (un tipo de teclado), keyword debe ser una cadena numérica que se asigna a las letras del teclado T9 que se van a buscar.If method is T9 (a type of keyboard) then keyword should be a numeric string that maps to the T9 keyboard letters to search for.
Si methodes String , keyword es la palabra clave que se va a buscar.If method is String then keyword is the keyword to search for.

Esquema de URI de la aplicación ContactosPeople app URI scheme

Use el esquema MS-People: URI para iniciar la aplicación People.Use the ms-people: URI scheme to launch the People app. Para obtener más información, consulta Iniciar la aplicación Contactos.For more info, see Launch the People app.

Esquema de URI de aplicación de fotosPhotos app URI scheme

Use el esquema MS-Photos: URI para iniciar la aplicación fotos para ver una imagen o editar un vídeo.Use the ms-photos: URI scheme to launch the Photos app to view an image or edit a video. Por ejemplo:For example:
Para ver una imagen: ms-photos:viewer?fileName=c:\users\userName\Pictures\image.jpgTo view an image: ms-photos:viewer?fileName=c:\users\userName\Pictures\image.jpg
O bien, para editar un vídeo: ms-photos:videoedit?InputToken=123abc&Action=Trim&StartTime=01:02:03Or to edit a video: ms-photos:videoedit?InputToken=123abc&Action=Trim&StartTime=01:02:03

Nota

Los URI para editar un vídeo o mostrar una imagen solo están disponibles en el escritorio.The URIs to edit a video or display an image are only available on desktop.

Esquema de URIURI scheme ResultsResults
MS-Photos: Viewer? fileName = {FILENAME}ms-photos:viewer?fileName={filename} Inicia la aplicación fotos para ver la imagen especificada donde {FILENAME} es un nombre de ruta de acceso completo.Launches the Photos app to view the specified image where {filename} is a fully-qualified path name. Por ejemplo: c:\users\userName\Pictures\ImageToView.jpgFor example: c:\users\userName\Pictures\ImageToView.jpg
MS-Photos: videoedit? InputToken = {token de entrada}ms-photos:videoedit?InputToken={input token} Inicia la aplicación fotos en el modo de edición de vídeo para el archivo representado por el token de archivo.Launches the Photos app in video editing mode for the file represented by the file token. InputToken es obligatorio.InputToken is required. Use SharedStorageAccessManager para obtener un token para un archivo.Use the SharedStorageAccessManager to get a token for a file.
MS-Photos: videoedit? Acción = {Action}ms-photos:videoedit?Action={action} Un parámetro que indica el modo de edición de vídeo en el que se va a abrir la aplicación de fotos, donde {Action} es uno de los siguientes: slowmotion, FrameExtraction, Trim, Viewy Ink.A parameter that indicates which video editing mode to open the Photos app in, where {action} is one of: SlowMotion, FrameExtraction, Trim, View, Ink. La acción es obligatoria.Action is required.
MS-Photos: videoedit? StartTime = {TimeSpan}ms-photos:videoedit?StartTime={timespan} Parámetro opcional que especifica dónde empezar a reproducir el vídeo.An optional parameter that specifies where to start playing the video. {timespan} debe tener el formato "hh:mm:ss.ffff" .{timespan} must be in the format "hh:mm:ss.ffff". Si no se especifica, el valor predeterminado es. 00:00:00.0000If not specified, defaults to 00:00:00.0000

Esquema de URI de la aplicación ConfiguraciónSettings app URI scheme

Use el esquema MS-Settings: URI para iniciar la aplicación de configuración de Windows.Use the ms-settings: URI scheme to launch the Windows Settings app. El inicio de la aplicación Configuración es una parte importante de la programación de una aplicación compatible con la privacidad.Launching to the Settings app is an important part of writing a privacy-aware app. Si la aplicación no puede obtener acceso a un recurso con información confidencial, se recomienda proporcionar al usuario un vínculo a la configuración de privacidad de ese recurso.If your app can't access a sensitive resource, we recommend providing the user a convenient link to the privacy settings for that resource. Por ejemplo, el siguiente URI abre la aplicación Configuración y muestra la configuración de privacidad de la cámara.For example, the following URI opens the Settings app and displays the camera privacy settings.

ms-settings:privacy-webcam

Configuración de privacidad de la cámara.

Para obtener más información, consulta Iniciar la aplicación Configuración de Windows y Directrices para aplicaciones compatibles con la privacidad.For more info, see Launch the Windows Settings app and Guidelines for privacy-aware apps.

Esquema de URI de la aplicación de la TiendaStore app URI scheme

Use el esquema de URI MS-Windows-Store: para iniciar la aplicación para UWP.Use the ms-windows-store: URI scheme to Launch the UWP app. Abra las páginas de detalles del producto, las páginas de revisión del producto y las páginas de búsqueda, etc. Por ejemplo, el siguiente URI abre la aplicación de UWP e inicia la Página principal de la tienda.Open product detail pages, product review pages, and search pages, etc. For example, the following URI opens the UWP app and launches the home page of the Store.

ms-windows-store://home/

Para obtener más información, consulte Inicio de la aplicación para UWP.For more info, see Launch the UWP app.

Esquema de URI de la aplicación meteorológicoWeather app URI scheme

Use el esquema de URI msnweather: para iniciar la aplicación meteorológica.Use the msnweather: URI scheme to launch the Weather app.

Esquema de URIURI Scheme ResultsResults
msnweather://Forecast? la = [ latitud ]&lo = [ longitud]msnweather://forecast?la=[latitude]&lo=[longitude] Inicia la aplicación Weather en la página de previsión en función de las coordenadas geográficas de ubicación.Launches the Weather app in the Forecast page based on a location geographic coordinates.
latitude hace referencia a la latitud de la ubicación.latitude refers to the latitude of the location.
longitude hace referencia a la longitud de la ubicación.longitude refers to the longitude of the location.