Avviare l'app di Windows predefinita per un URI
Informazioni su come avviare l'app predefinita per un URI (Uniform Resource Identifier). Gli URI consentono di avviare un'altra app per eseguire un'attività specifica. Questo argomento offre anche una panoramica dei numerosi schemi URI incorporati in Windows. È anche possibile avviare URI personalizzati. Per altre informazioni sulla registrazione di uno schema URI personalizzato e sulla gestione dell'attivazione URI, vedere Gestire l'attivazione URI.
Gli schemi URI consentono di aprire le app facendo clic sui collegamenti ipertestuali. Proprio come è possibile avviare un nuovo messaggio di posta elettronica usando mailto:, è possibile aprire il Web browser predefinito usando http: o https:.
In questo argomento vengono descritti gli schemi URI seguenti incorporati in Windows:
Schema URI | Lanciamenti |
---|---|
bingmaps:, ms-drive-to:, e ms-walk-to: | App Mappe |
http: e https: | Web browser predefinito |
mailto: | App di posta elettronica predefinita |
microsoft-edge: | Browser Microsoft Edge |
ms-chat: | App di messaggistica |
ms-people: | App Persone |
ms-photos: | L'app Foto |
ms-recall: | Fare clic per eseguire (parte di Richiamo) |
ms-settings: | App Impostazioni |
ms-store: | App dello Store |
msnweather: | App Meteo |
Ad esempio, l'URI seguente apre il browser predefinito e visualizza il sito Web Microsoft Bing: https://bing.com/
.
È anche possibile avviare schemi URI personalizzati. Se non è installata alcuna app per gestire l'URI, è possibile consigliare un'app per l'installazione dell'utente. Per ulteriori informazioni, vedi Consiglia un'app se non è disponibile per gestire l'URI.
In generale, la tua app non può scegliere quale app avviare. L'utente determina quale app viene avviata. Più app possono registrarsi per gestire lo stesso schema URI. L'eccezione è per gli schemi URI riservati. Le registrazioni degli schemi URI riservati vengono ignorate. Per l'elenco completo degli schemi URI riservati, vedere Gestire l'attivazione URI. Nei casi in cui più app potrebbero aver registrato lo stesso schema URI, l'app può consigliare l'avvio di un'app specifica. Per ulteriori informazioni, consulta consiglia un'applicazione se non ce n'è una disponibile per gestire l'URI.
API importanti
In questo argomento vengono usate le API Di Windows Runtime (WinRT) seguenti:
Si noti che molte API WinRT funzioneranno con altre app desktop con l'identità del pacchetto. Esistono alcune eccezioni e la maggior parte di queste sono correlate alle API specifiche per il rendering o l'input dell'interfaccia utente. Alcuni dei LauncherOptions, ad esempio TreatAsUntrusted, funzionano solo nelle app UWP. Per altre informazioni sull'abilitazione dell'app desktop per l'uso con le API WinRT, vedere Chiamare le API di Windows Runtime nelle app desktop.
Chiamare LaunchUriAsync per avviare un URI
Usare il metodo LaunchUriAsync per avviare un URI. Quando chiami questo metodo, l'app deve essere l'app in primo piano, ovvero deve essere visibile all'utente. Questo requisito consente di garantire che l'utente rimanga in controllo. Per soddisfare questo requisito, assicurarsi di associare tutti gli avvii URI direttamente all'interfaccia utente dell'app. L'utente deve sempre eseguire un'azione per avviare un URI. In un'app UWP, se tenti di avviare un URI e la tua app non è in primo piano, l'avvio avrà esito negativo e verrà richiamata la callback di errore.
Creare prima di tutto un oggetto System.Uri per rappresentare l'URI, quindi passarlo al metodo LaunchUriAsync. Usare il risultato restituito per verificare se la chiamata ha avuto esito positivo, come illustrato nell'esempio seguente.
private async void launchURI_Click(object sender, RoutedEventArgs e)
{
// The URI to launch
var bingUri = new Uri(@"https://www.bing.com");
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(bingUri);
if (success)
{
// URI launched
}
else
{
// URI launch failed
}
}
In alcuni casi, il sistema operativo chiederà all'utente di verificare se vuole effettivamente cambiare app.
Importante
Questa richiesta è supportata solo dalle app UWP. Se Windows tenta di visualizzare questa richiesta per un'app desktop, l'avvio avrà esito negativo.
Se l'app è un'app UWP e vuoi che venga sempre visualizzata questa richiesta, usa la proprietà Windows.System.LauncherOptions.TreatAsUntrusted per indicare al sistema operativo di visualizzare un avviso.
// 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
{
TreatAsUntrusted = true
};
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriBing, promptOptions);
Consiglia un'app se non è disponibile per gestire l'URI
In alcuni casi, l'utente potrebbe non avere un'app installata per gestire l'URI che si sta avviando. Per impostazione predefinita, il sistema operativo gestisce questi casi fornendo all'utente un collegamento per cercare un'app appropriata nello Store. Se si vuole fornire all'utente una raccomandazione specifica per l'app da acquisire in questo scenario, è possibile farlo passando tale raccomandazione insieme all'URI che si sta avviando.
Le raccomandazioni sono utili anche quando più app sono state registrate per gestire uno schema URI. Consigliando un'app specifica, Windows aprirà l'app se è già installata.
Per fare una raccomandazione, chiamare il metodo Windows.System.Launcher.LaunchUriAsync(Uri, LauncherOptions) con LauncherOptions.preferredApplicationPackageFamilyName impostato sul nome della famiglia di pacchetti dell'app nello Store che si vuole consigliare. Il sistema operativo usa queste informazioni per sostituire l'opzione generale per cercare un'app nello Store con un'opzione specifica per acquisire l'app consigliata dallo Store.
// Set the recommended app
var options = new Windows.System.LauncherOptions
{
PreferredApplicationPackageFamilyName = "Contoso.URIApp_8wknc82po1e",
PreferredApplicationDisplayName = "Contoso URI App"
};
// 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);
Impostare le preferenze di visualizzazione rimanenti
Importante
Questa funzionalità è disponibile solo nelle app UWP. Se usata in un'app desktop, la proprietà verrà ignorata.
Le applicazioni di origine che chiamano "LaunchUriAsync" possono richiedere di rimanere visibili sullo schermo dopo l'avvio di un URI. Per impostazione predefinita, Windows tenta di condividere tutti gli spazi disponibili in modo uniforme tra l'app di origine e l'app di destinazione che gestisce l'URI. Le app di origine possono usare la proprietà DesiredRemainingView per indicare al sistema operativo che preferisce che la finestra dell'app assuma più o meno spazio disponibile. DesiredRemainingView può anche essere usato per indicare che l'app di origine non deve rimanere sullo schermo dopo l'avvio dell'URI e può essere completamente sostituita dall'app di destinazione. Questa proprietà specifica solo le dimensioni della finestra preferite dell'app chiamante. Non specifica il comportamento di altre app che possono verificarsi sullo schermo contemporaneamente.
Nota
Windows tiene conto di più fattori diversi quando determina le dimensioni finali della finestra dell'app di origine, ad esempio la preferenza dell'app di origine, il numero di app sullo schermo, l'orientamento dello schermo e così via. Impostando DesiredRemainingView, non è garantito un comportamento di finestra specifico per l'app di origine.
// Set the desired remaining view.
var options = new Windows.System.LauncherOptions
{
DesiredRemainingView = Windows.UI.ViewManagement.ViewSizePreference.UseLess
};
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriContoso, options);
Schemi URI
I vari schemi URI sono descritti in questa sezione.
Schema URI di posta elettronica
Usare il mailto: schema URI per avviare l'app di posta predefinita.
Schema URI | Risultati |
---|---|
mailto: |
Avvia l'app di posta elettronica predefinita. |
mailto:\[email address\] |
Avvia l'app di posta elettronica e crea un nuovo messaggio con l'indirizzo di posta elettronica specificato nel campo A. Si noti che il messaggio di posta elettronica non viene inviato finché l'utente non tocca l'invio. |
Schema HTTP URI
Usare lo schema http : URI per avviare il Web browser predefinito.
Schema URI | Risultati |
---|---|
http: o https: |
Avvia il Web browser predefinito. |
Schemi URI dell'app Mappe
Usare gli schemi URI bingmaps:, ms-drive-to:e ms-walk-to: per avviare l'app Mappe di Windows verso mappe, indicazioni stradali e risultati della ricerca specifici. Ad esempio, l'URI seguente apre l'app Mappe di Windows e visualizza una mappa centrata su New York City.
bingmaps:?cp=40.726966~-74.006076
Per ulteriori informazioni, consulta Avvia l'app Mappe di Windows. Per usare il controllo mappa nella tua app UWP, vedi Visualizzare mappe con visualizzazioni 2D, 3D e Streetside. Se usi Windows App SDK 1.5 o versione successiva in un'app WinUI o in un'altra app desktop, puoi usare MapControl.
Schema URI dell'app di messaggistica
Usare lo schema URI ms-chat: per avviare l'app di messaggistica Microsoft.
Schema URI | Risultati |
---|---|
ms-chat: |
Avvia l'app di messaggistica. |
ms-chat:?ContactID={contacted} |
Consente l'avvio dell'applicazione di messaggistica con le informazioni di un contatto specifico. |
ms-chat:?Body={body} |
Consente l'avvio dell'applicazione di messaggistica con una stringa da usare come contenuto del messaggio. |
ms-chat:?Addresses={address}&Body={body} |
Consente l'avvio dell'applicazione di messaggistica con le informazioni di un determinato indirizzo e con una stringa da usare come contenuto del messaggio. Nota: gli indirizzi possono essere concatenati. |
ms-chat:?TransportId={transportId} |
Consente l'avvio dell'applicazione di messaggistica con un ID di trasporto specifico. |
Schema URI dell'app People
Usare lo schema URI ms-people: per avviare l'app People. Per altre info, vedi Avviare l'app People.
Importante
L'app Contatti passa al nuovo Outlook. È possibile prendere i contatti con te selezionando Esporta contatti sulla barra degli strumenti dell'app Contatti e quindi importandoli nel nuovo Outlook. Per altre informazioni, vedere Gestire i contatti e connettersi alle persone tramite il nuovo outlook per Windows (anteprima).
Schema URI dell'app Foto
Usa il ms-photos: schema URI per avviare l'app Foto per visualizzare un'immagine o modificare un video. Per esempio:
Operazione | URI |
---|---|
Visualizzare un'immagine | ms-photos:viewer?fileName=c:\users\userName\Pictures\image.jpg |
Modificare un video | ms-photos:videoedit?InputToken=123abc&Action=Trim&StartTime=01:02:03 |
Nota
Se avvii l'app Foto da un'app UWP, gli URI per modificare un video o visualizzare un'immagine sono disponibili solo sul desktop.
Nella tabella seguente sono elencati gli schemi URI supportati aggiuntivi per l'app Foto:
Schema URI | Risultati |
---|---|
ms-photos:viewer?fileName={filename} |
Avvia l'applicazione Foto per aprire e visualizzare l'immagine specificata in cui {filename} è un nome di percorso completo. Ad esempio: c:\users\userName\Pictures\ImageToView.jpg |
ms-photos:videoedit?InputToken={input token} |
Avvia l'app Foto in modalità di modifica video per il file rappresentato dal token di file. è necessario InputToken. Usare il sharedStorageAccessManager per ottenere un token per un file. |
ms-photos:videoedit?Action={action} |
Parametro che indica la modalità di modifica video in cui aprire l'app Foto, in cui {action} è uno di: SlowMotion, FrameExtraction, Trim, View, Ink. È richiesta l' azione. |
ms-photos:videoedit?StartTime={timespan} |
Parametro facoltativo che specifica dove iniziare a riprodurre il video.
{timespan} deve essere nel formato "hh:mm:ss.ffff" . Se non specificato, per impostazione predefinita viene 00:00:00.0000 |
Schema URI dell'app Impostazioni
Usare lo schema URI ms-settings: per avviare l'app Impostazioni di Windows. Avviare l'app Impostazioni è una parte importante della scrittura di un'app attenta alla privacy. Se l'app non riesce ad accedere a una risorsa sensibile, è consigliabile fornire all'utente un collegamento pratico alle impostazioni di privacy per tale risorsa.
Ad esempio, l'URI seguente apre l'app Impostazioni e visualizza le impostazioni di privacy della fotocamera:
ms-settings:privacy-webcam
Per altre info, vedi Avviare l'app Impostazioni di Windows e Sicurezza e identità.
Schema URI dell'app Store
Usare lo schema ms-windows-store: URI per avviare l'app di Microsoft Store. Aprire le pagine dei dettagli del prodotto, le pagine di revisione del prodotto e le pagine di ricerca e così via. Ad esempio, l'URI seguente apre l'app Microsoft Store e avvia la home page dello Store.
ms-windows-store://home/
Per ulteriori informazioni, vedere Utilizzo degli URI ms-windows-store.
Schema URI dell'app meteo
Usare lo schema URI msnweather: per avviare l'app Weather.
Schema URI | Risultati |
---|---|
msnweather://forecast?la=\[latitude\]&lo=\[longitude\] |
Avvia l'app Meteo nella pagina Previsione in base alle coordinate geografiche della posizione.latitude fa riferimento alla latitudine della posizione.longitude fa riferimento alla longitudine della posizione. |
Schema URI di Microsoft Edge
Usare il microsoft-edge: schema URI per avviare il browser Microsoft Edge in un URL specificato.
Schema URI | Risultati |
---|---|
microsoft-edge:https://example.com/ |
Apre il browser Microsoft Edge e passa a https://example.com/ |
È possibile usare questo schema URI per avviare il browser Microsoft Edge, indipendentemente dall'impostazione predefinita del browser dell'utente.