啟動 URI 的預設應用程式
重要應用程式介面
瞭解如何針對統一資源識別碼 (URI) 啟動預設應用程式。 URI 可讓您啟動另一個應用程式來執行特定工作。 本主題也提供 Windows 內建的許多 URI 配置概觀。 您也可以啟動自訂 URI。 如需註冊自訂 URI 配置及處理 URI 啟用的詳細資訊,請參閱 處理 URI 啟用。
URI 配置可讓您按兩下超連結來開啟應用程式。 就像您可以使用 mailto:啟動新電子郵件一樣,您可以使用 HTTP: 開啟預設網頁瀏覽器
本主題描述 Windows 內建的下列 URI 配置:
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: | 商店應用程式 |
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 啟動直接系結至應用程式的 UI。 用戶必須一律採取一些動作來起始 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 配置
使用 ms-call: URI 配置來啟動通話應用程式。
URI 方案 | 結果 |
---|---|
ms-call:settings |
呼叫應用程式設定頁面。 |
電子郵件 URI 方案
使用 mailto: URI 配置來啟動預設郵件應用程式。
URI 方案 | 結果 |
---|---|
mailto: |
啟動預設的電子郵件應用程式。 |
mailto:\[email address\] |
啟動電子郵件應用程式,並在 [收件者] 行上建立具有指定電子郵件位址的新訊息。 請注意,在用戶點選 [傳送] 之前,不會傳送電子郵件。 |
HTTP URI 方案
使用 HTTP: URI 配置來啟動預設網頁瀏覽器。
URI 方案 | 結果 |
---|---|
http: |
啟動預設網頁瀏覽器。 |
地圖應用程式 URI 方案
使用 bingmaps:、ms-drive-to:,以及 ms-walk-to: URI 配置來 啟動 Windows 地圖應用程式, 特定地圖、方向和搜尋結果。 例如,下列 URI 會開啟 Windows 地圖應用程式,並顯示以紐約市為中心的地圖。
bingmaps:?cp=40.726966~-74.006076
如需詳細資訊,請參閱 啟動 Windows 地圖應用程式。 若要在您自己的應用程式中使用地圖控件,請參閱 使用 2D、3D 和 Streetside 檢視來顯示地圖。
傳訊應用程式的 URI 模式
使用 ms-chat: URI 配置來啟動 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 傳遞至 LaunchURI API。 如需詳細資訊,請參閱 使用 ms-tonepicker URI 配置 選擇和儲存音調。
附近號碼 App URI 方案
使用 ms-yellowpage: URI 格式來啟動 Nearby Numbers 應用程式。
URI 配置 | 結果 |
---|---|
ms-yellowpage:?input=\[keyword\]&method=\[String or T9\] |
啟動 Nearby Numbers 應用程式。input 是指您想要搜尋的關鍵詞。method 是指搜尋類型(字串或 T9 搜尋)。如果 method 是 T9 (某種鍵盤類型),那麼 keyword 應該是一個對應到要搜尋的 T9 鍵盤字母的數值字串。如果 method String ,則 keyword 是要搜尋的關鍵詞。 |
人員應用程式 URI 配置
使用 ms-people: URI 配置來啟動 People 應用程式。 如需詳細資訊,請參閱 開啟「人員」應用程式。
相片應用程式 URI 架構
使用 ms-photos: URI 配置啟動 Photos 應用程式來檢視影像或編輯視訊。 例如:
若要檢視影像: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} |
啟動 Photos 應用程式,以檢視指定的影像,其中 {filename} 是完整路徑名稱。 例如:c:\users\userName\Pictures\ImageToView.jpg |
ms-photos:videoedit?InputToken={input token} |
針對檔案令牌所代表的檔案,以視訊編輯模式啟動 Photos 應用程式。 需要 InputToken。 使用 SharedStorageAccessManager 來取得檔案的令牌。 |
ms-photos:videoedit?Action={action} |
參數,指出開啟相片應用程式的視訊編輯模式,其中 {action} 是下列其中一個:SlowMotion、FrameExtraction、Trim、ViewInk。 需要 動作。 |
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 配置
使用 msnweather: URI 配置來啟動 Weather 應用程式。
URI 方案 | 結果 |
---|---|
msnweather://forecast?la=\[latitude\]&lo=\[longitude\] |
根據位置地理座標,在 [預測] 頁面中啟動天氣應用程式。latitude 是指位置的緯度。longitude 是指位置的經度。 |
Microsoft Edge URI 方案
使用 microsoft-edge : URI 配置,將 Microsoft Edge 瀏覽器啟動至指定的 URL。
URI 方案 | 結果 |
---|---|
microsoft-edge:https://example.com/ |
開啟 Microsoft Edge 瀏覽器並流覽至 https://example.com/ |