本文為 Windows 應用程式開發人員提供有關如何與 Windows 上的預設應用程式平台整合以及如何引導使用者變更 Windows 11 中的預設應用程式設定的資訊。
應用程式預設值平臺可讓開發人員註冊其應用程式,以支援 Windows 上的檔案和連結類型,以支援兩個主要案例:
- 允許使用者使用 [設定] 中的 [預設應用程式 UX] 來指定 Windows 使用哪些應用程式來開啟特定檔案類型或連結類型。
- 允許開發人員透過叫用檔案或連結類型來促進應用程式對應用程式的啟動。
使用者預設的應用程式體驗
Windows 11 允許使用者透過 Windows 設定和其他系統 UI 變更預設應用程式。
- 當使用者開啟檔案或連結類型時,Windows 會在安裝註冊該檔案或連結類型的新應用程式時自動提示使用者。
- 應用程式還可以將使用者引導至「設定」以變更預設應用程式設置,並使用應用程式內提示或文件引導使用者完成此過程。
應用程式開發人員的預設應用程式設定
您的應用程式可以註冊成為檔案和連結類型的預設處理常式。 Windows 桌面應用程式和 WinUI 應用程式都可以註冊作為預設處理程序。 如果使用者選擇您的應用程式作為預設處理常式,Windows 會在叫用該類型的檔案或連結時啟用您的應用程式。
適用於開發人員的預設應用程式平台最佳做法
- 使用 URI 直接
ms-settings:defaultapps啟動預設應用程式設定頁面或預設應用程式內的應用程式頁面。 如需詳細資訊,請參閱 啟動預設應用程式設定頁面。 - 深思熟慮地提醒使用者。 當您的應用程式開啟其支援但不是預設的檔案類型時,請使用內容性提示訊息。
- 提供清晰的說明:在您的應用程式或支援網站中包含螢幕截圖或逐步指南。
- 尊重使用者選擇:避免激進的提示或重複的通知。
- 只有在您想要處理該類型的所有啟動時,才註冊該類型。 例如,如果您的應用程式只需要在內部使用檔案類型,則不需要註冊為預設處理常式。 如果您選擇註冊某個類型,則必須為使用者提供針對該類型啟用應用程式時預期的功能。
使用預設的應用程式連結類型來進行應用程式間的啟動
例如,應用程式可以透過呼叫 Launcher.LaunchUriAsync,告知 Windows 啟動使用者為指定連結類型設定的預設應用程式,從而將控制權交給另一個應用程式。
應用程式可以透過啟動已知的 URI 準則(例如https:),來指示 Windows 使用使用者設定的預設值。
如果應用程式知道在應用程式預設平台中註冊的連結類型,例如ms-settings:,則可以明確選擇另一個應用程式來啟動。
URI 配置可以是官方標準、公開記錄或專有。 例如,
-
https:被網際網路號碼分配機構記錄為永久計劃,RFC8615。 - Spotify 公開記錄了一個
spotify:方案,詳情請參閱 Spotify URI 和 ID。 - 其他配置可能是專有的,如果應用程式註冊並設定為不知道如何實作的 URI 配置的預設值,則會為使用者建立中斷的端對端體驗。
註冊檔案和連結類型
所有應用程式都可以註冊其支援的類型,以參與應用程式預設平台。 封裝的應用程式可以使用其應用程式套件資訊清單架構檔案中的 uap:FileTypeAssociation 元素來宣告支援的檔案類型。 非封裝應用程式支援其他檔案關聯機制。 如需詳細資訊,請參閱檔案 類型和檔案關聯 以及 檔案關聯和預設程式的指導方針。
句柄啟動
啟動 Windows 應用程式時,Windows 會提供資訊給應用程式,讓它判斷它已從檔案關聯或連結類型叫用啟動。 如需詳細資訊,請參閱 在 Windows 應用程式中處理檔案啟用 和 使用 Windows 應用程式處理 URI 啟用。
應用程式預設值平台的安全性考量
為了協助保護使用者的預設應用程式選擇,免於惡意代碼變更設定,而使用者不知道,Windows 要求必須透過 Windows 系統 UI 來設定應用程式預設設定。
- Windows 不允許以程式設計方式變更預設應用程式,而不需要在系統 UI 中進行使用者互動。 如需詳細資訊,請參閱 受管理環境中的應用程式預設值
- 應用程式預設值的使用者設定資料會在登錄資料存放區中模糊化。 應用程式不支援以登錄為基礎的變更。
- 應用程式預設值的使用者設定資料受到 Windows 篩選驅動程式 (UCPD.sys) 的保護,可封鎖應用程式寫入應用程式預設值資料。
- 應用程式可以查詢哪個應用程式是指定類型的預設應用程式。 如需詳細資訊,請參閱 IApplicationAssociationRegistration::QueryCurrentDefault。
- 由 Microsoft Store 散發的應用程式必須遵守 Microsoft Store 原則,特別是 第 10.2.8 節 ,其中要求應用程式只使用支援的方法來更新 Windows 設定,包括應用程式預設設定。
受控環境中的應用程式預設值
在受控電腦上,IT 系統管理員可以透過原則控制應用程式預設值。 應用程式預設值平臺提供群組原則和行動裝置管理 (MDM) 原則,以協助這些管理案例。 這些原則也會與漫遊使用者設定檔搭配使用,以支援更複雜的環境。 由於上述安全性考量,不使用這些原則的解決方案可能無法正常運作。 如需詳細資訊,請參閱 ApplicationDefaults 政策 CSP 和 部署漫遊使用者設定檔