在 Visual Studio 中封裝桌面或 UWP 應用程式

發佈您的應用程式之前,您必須先將它封裝。 本文說明使用 Visual Studio 設定、建立及測試 MSIX 套件的程式。

應用程式套件類型

  • 應用程式套件 ( msix 或 .appx)
    包含您的應用程式及其資源的單一套件,以單一裝置架構為目標。 例如,x64 或 x86 應用程式封裝。 若要以應用程式套件組合為目標的多個架構為目標,您必須為每個架構產生一個架構。

  • 應用程式套件組合 ( msixbundle 或 .appxbundle)
    應用程式套件組合是一種套件,可以包含多個應用程式套件,每一個為了支援特定裝置架構而建置。 例如應用程式套件組合可以包含適用於 x86、x64 及 ARM 設定的三個不同的應用程式套件。 應該盡可能產生應用程式套件組合,因為它們允許您的應用程式用於最多種類的裝置。

  • 應用程式套件 Upload 檔案 ( msixupload 或. .appxupload) -僅供商店提交
    單一檔案,可以包含多個應用程式套件或單一應用程式套件組合以支援各種處理器架構。 應用程式套件上傳檔案也包含符號檔,可在您的應用程式發佈至 Microsoft Store 之後,分析應用程式效能。 如果您要將應用程式封裝成 Visual Studio,並將其提交至合作夥伴中心以發佈至 Microsoft Store,則會自動為您建立此檔案。

以下是準備與建立應用程式套件的步驟概觀:

  1. 封裝您的應用程式之前。 請遵循下列步驟,以確保您的應用程式已準備好進行封裝。

  2. 設定您的專案。 請使用 Visual Studio 資訊清單設計工具來設定套件。 例如,新增磚影像,然後選擇您的應用程式支援的方向。

  3. 產生應用程式套件。 使用 Visual Studio 封裝嚮導來建立應用程式套件。

  4. 執行、偵測和測試已封裝的應用程式。 從 Visual Studio 或直接安裝套件來執行和偵測應用程式套件。

封裝您的應用程式之前

  1. 測試您的應用程式。 封裝您的應用程式之前,請確定它在您打算支援的所有裝置系列上都能如預期般運作。 這些裝置系列可能包含桌上型電腦、行動裝置、Surface Hub、Xbox、IoT 裝置或其他等。 如需使用 Visual Studio 部署和測試應用程式的詳細資訊,請參閱部署和偵測 UWP 應用程式 (也適用于已封裝的桌面應用程式) 。

  2. 最佳化您的應用程式。 您可以使用 Visual Studio 的程式碼剖析和偵錯工具,將已封裝應用程式的效能優化。 例如,UI 回應性時間軸工具、記憶體使用量工具及 CPU 使用量工具等。 如需這些工具的詳細資訊,請參閱程式碼剖析功能之旅主題。

  3. 檢查 .NET Native 相容性 (適用於 VB 和 C# 應用程式)。 在通用 Windows 平台中,有原生編譯器可改善您的應用程式的執行階段效能。 由於這項變更,您應該在此編譯環境中測試您的 app。 根據預設, 發行 組建設定會啟用 .net native 工具鏈,因此請務必使用此 發行 設定來測試您的應用程式,並檢查您的應用程式是否如預期般運作。

設定您的專案

應用程式資訊清單檔案 (Package.appxmanifest) 是包含建立應用程式套件所需之屬性和設定的 XML 檔案。 例如,app 資訊清單檔案中的屬性描述做為您的應用程式磚的影像,以及當使用者旋轉裝置時您的應用程式支援的方向。

Visual Studio 資訊清單設計工具可讓您輕鬆更新資訊清單檔案而不需要編輯檔案的原始 XML。

使用資訊清單設計工具設定套件

  1. 方案總管 中,展開應用程式專案的專案節點。

  2. 按兩下 package.appxmanifest 檔案。 如果資訊清單檔案已在 XML 程式碼檢視中開啟,Visual Studio 會提示您關閉檔案。

  3. 現在您可以決定如何設定您的 app。 每個索引標籤均包含可設定有關您的 app 的資訊以及必要的詳細資訊的連結。

    Visual Studio 中的資訊清單設計工具

    在 [ 視覺資產 ] 索引標籤上,確認您擁有應用程式所需的所有影像。 這是您提供 應用程式圖示和標誌的位置。

    在 [ 封裝 ] 索引標籤中,您可以輸入發行資料。 從此處您可以選擇要用來登入您的 app 的憑證。 所有 MSIX 應用程式都必須使用憑證簽署。

    注意

    從 Visual Studio 2019 開始,已封裝的桌面或 UWP 專案中不會再產生暫時憑證。 若要建立或匯出憑證,請使用這篇文章所述的 PowerShell Cmdlet。 在 Visual Studio 的最新版本中,您也可以使用儲存在 Azure Key Vault 中的憑證來簽署應用程式,以供開發和測試案例使用。

    重要

    如果您要在 Microsoft Store 發佈應用程式,將會為您以受信任的憑證簽署應用程式。 這可讓使用者安裝及執行您的應用程式,而不需安裝相關聯的應用程式簽署憑證。

    如果您要在裝置上安裝應用程式套件,您必須先信任套件。 憑證必須安裝在該使用者裝置上,才能信任該套件。

  4. 在對您的 app 進行必要的編輯之後,請儲存 Package.appxmanifest 檔案。

如果您是透過 Microsoft Store 散發您的應用程式,則 Visual Studio 可以將您的套件與存放區產生關聯。 若要這樣做,請在方案總管中的專案名稱上按一下滑鼠右鍵,然後選擇 [發佈 -> 應用程式與存放區 (] Visual Studio 2019 16.3 版之前,[發行] 功能表會命名為 [存放) ]。 您也可以在 [ 建立應用程式套件 ] 嚮導中執行這項操作,如下一節所述。 建立應用程式關聯時,會自動更新資訊清單設計工具的 [封裝] 索引標籤中的一些欄位。

產生應用程式套件

您可以使用應用程式管理工具(例如 Microsoft Intune 和設定管理員等),在您的網站上發行應用程式,而不需要在存放區中發佈應用程式。您也可以直接安裝 MSIX 套件,以在本機或遠端電腦上進行測試。

使用封裝嚮導建立應用程式套件

注意

下列指示和螢幕擷取畫面描述從 Visual Studio 2019 16.3 版到的流程。 如果您使用的是較舊的版本,某些 UI 看起來可能會不同。 如果您要封裝桌面應用程式,請以滑鼠右鍵按一下 Windows 應用程式封裝專案節點。

  1. 方案總管 中,開啟應用程式專案的方案。

  2. 以滑鼠右鍵按一下專案,然後選擇 [發佈 -> 建立應用程式封裝] (在 Visual Studio 2019 16.3 版之前,[發行] 功能表的名稱為 [存放區) 。

    導覽至 [建立應用程式套件] 的操作功能表

  3. 在嚮導的第一頁中選取 [側 ],然後按 [下一步]

    使用側載顯示的 [建立套件] 對話方塊視窗

  4. 在 [ 選取簽署方法 ] 頁面上,選取是否略過封裝簽署或選取憑證進行簽署。 您可以從本機憑證存放區選取憑證、選取憑證檔案,或建立新的憑證。 針對要安裝在終端使用者電腦上的 MSIX 套件,必須使用電腦上信任的憑證進行簽署。

    建立使用簽署所顯示的套件對話方塊視窗

  5. 完成 [選取和設定套件] 頁面,如 使用 Visual Studio 一節建立您的應用程式套件上傳檔案中所述。

按兩下以安裝您的應用程式套件

只要按兩下應用程式套件檔案,就可以安裝應用程式套件。 若要這樣做,請流覽至您的應用程式套件或應用程式套件組合檔案,然後按兩下該檔案。 應用程式安裝程式 啟動並提供基本的應用程式資訊,以及安裝按鈕、安裝進度列和任何相關錯誤訊息。

注意

應用程式安裝程式假設套件已使用裝置上信任的憑證進行簽署。 如果不是,您必須將簽署憑證安裝到裝置上的 [受信任的人] 或 [信任的發行者] 憑證授權單位單位存放區。 如果您不確定如何執行此動作,請參閱安裝測試憑證

使用安裝腳本安裝您的應用程式套件

  1. 開啟 *_Test 資料夾。

  2. 以滑鼠右鍵按一下 Add-AppDevPackage.ps1 檔案。 選擇 [用 PowerShell 執行],並依照提示進行。
    顯示瀏覽到 PowerShell 指令碼的檔案總管

    安裝完應用程式套件時,PowerShell 視窗會顯示此訊息:您的應用程式已順利安裝。

  3. 按一下 [開始] 按鈕以依據名稱搜尋應用程式,然後啟動它。

後續步驟:偵錯工具套件並加以測試

請參閱執行、偵測和測試應用程式封裝,以瞭解如何在 Visual Studio 中或使用 Windows 偵錯工具來進行應用程式的偵錯工具。

產生用來提交商店的應用程式套件上傳檔案

若要將您的應用程式散發至 Microsoft Store,建議您) 產生 應用程式套件上傳 檔案 (. msixupload 或. .appxupload,然後將此檔案提交給合作夥伴中心。 雖然可以將應用程式套件或應用程式套件組合提交給單獨的合作夥伴中心,但建議您改為提交應用程式套件上傳檔案。

您可以使用 Visual Studio 中的 [建立應用程式套件] 來建立應用程式套件上傳檔案,也可以從現有的應用程式套件或應用程式套件組合手動建立一個檔案。

注意

如果您想要) 手動建立應用程式套件 ( msix 或 .appx) 或應用 ( 程式套件組合,請參閱 使用 MakeAppx.exe 工具建立應用程式套件

使用 Visual Studio 建立您的應用程式套件上傳檔案

注意

下列指示和螢幕擷取畫面描述從 Visual Studio 2019 16.3 版到的流程。 如果您使用的是較舊的版本,某些 UI 看起來可能會不同。

  1. 方案總管 中,開啟 UWP 應用程式專案的方案。

  2. 以滑鼠右鍵按一下專案,然後選擇 [發佈 -> 建立應用程式封裝] (在 Visual Studio 2019 16.3 版之前,[發行] 功能表的名稱為 [存放區) 。 如果此選項停用或未顯示,請確定專案是通用 Windows 專案。

    導覽至 [建立應用程式套件] 的操作功能表

    [ 建立應用程式套件 ] wizard 隨即出現。

  3. 在第一個對話方塊中,選取 Microsoft Store 使用新的應用程式名稱,然後按 [下一步]。

    [建立您的套件] 對話方塊視窗,並顯示 Microsoft Store

    如果您已將專案與存放區中的應用程式建立關聯,您也可以選擇為相關聯的商店應用程式建立套件。 如果您選擇側 ,Visual Studio 將不會產生合作夥伴中心提交的應用程式套件上傳 (. msixupload 或. .appxupload) 檔。 如果您只想建立非存放區散發的 MSIX 套件或套件組合,您可以選取此選項。

  4. 在下一個頁面上,使用您的開發人員帳戶登入以合作夥伴中心。 如果您還沒有開發人員帳戶,精靈會幫助您建立一個。

    顯示選取 App 名稱的 [建立應用程式套件] 視窗

  5. 從目前已向帳戶註冊的應用程式清單中選取您套件的應用程式名稱,如果您尚未在合作夥伴中心中保留一個,請保留一個新的應用程式名稱。

  6. 確定您在 [選取並設定套件] 對話方塊中選取全部的三種架構設定 (x86、x64 及 ARM),以確保 app 部署到最多種類的裝置。 在 [ 產生應用程式 套件組合] 清單方塊中,選取 [ 永遠]。 應用程式套件組合 ( .appxbundle 或 msixbundle) 優先于單一應用程式套件檔案,因為它包含針對每種類型的處理器架構所設定的應用程式套件集合。 當您選擇產生應用程式套件組合時,應用程式套件組合將會包含在最終的應用程式套件上傳 ( .appxupload 或. msixupload) 檔案,以及偵錯工具和損毀分析資訊。 如果您不確定選擇哪些架構,或想要深入了解各種裝置所使用的架構,請查看應用程式套件架構

    顯示套件設定的 [建立應用程式套件] 視窗

  7. 在應用程式發佈後,包含公開符號檔,以分析合作夥伴中心中的 應用程式效能 。 設定任何其他詳細資料,例如版本編號或套件輸出位置。

  8. 按一下 [建立] 產生應用程式套件。 如果您選取其中一個要在步驟3中 上傳至 Microsoft Store 選項的封裝,並建立合作夥伴中心提交的封裝,則 wizard 會建立封裝上傳 (. .appxupload 或. msixupload) 檔。 如果您選取 [我想要在步驟3中 建立側載的封裝 ],則嚮導會根據您在步驟6中所做的選擇,建立單一應用程式套件或應用程式套件組合。

  9. 成功封裝您的應用程式時,您會看到這個對話方塊,而且您可以從指定的輸出位置取出應用程式套件上傳檔案。 此時,您可以 在本機電腦或遠端電腦上驗證您的應用程式套件 ,並 自動進行存放區提交

    顯示驗證選項的 [套件建立完成] 視窗

手動建立您的應用程式套件上傳檔案

  1. 將下列檔案放在資料夾中:

    • 一或多個應用程式套件 ( msix 或 .appx) 或應用程式套件組合 (. msixbundle 或 .appxbundle) 。
    • .Appxsym 檔案。 這是壓縮的 .pdb 檔案,其中包含您的應用程式公用符號,用於合作夥伴中心中的損 毀分析 。 您可以省略此檔案,但如果您這樣做,您的應用程式將無法使用任何損毀分析或偵測資訊。
  2. 選取資料夾內的所有檔案,以滑鼠右鍵按一下檔案,然後選取 [傳送到 -> 壓縮 (壓縮的) 資料夾

  3. 將新的 zip 檔案延伸模組名稱從 .zip 變更為 msixupload 或. .appxupload。

驗證您的應用程式封裝

先驗證您的應用程式,再將它提交給本機或遠端電腦上的認證合作夥伴中心。 您只能驗證您的應用程式套件的發行組建,而非偵錯組建。 如需將應用程式提交至合作夥伴中心的詳細資訊,請參閱 應用程式提交

在本機驗證您的應用程式套件

  1. 在 [建立應用程式套件] 嚮導的 [最終 封裝建立完成] 頁面中,保留選取 [本機電腦] 選項,然後按一下 [啟動 Windows 應用程式認證套件。 如需使用 Windows 應用程式認證套件測試應用程式的詳細資訊,請參閱 Windows 應用程式認證套件

    Windows 應用程式認證套件 (WACK) 會執行各種測試並傳回結果。 如需更具體的資訊,請參閱 Windows 應用程式認證套件測試

    如果您有想用來測試的遠端 Windows 10 裝置,您將需要在該裝置上手動安裝 Windows 應用程式認證套件。 下一節會帶您逐步完成下列步驟。 完成之後,您可以選取 [遠端電腦],然後按一下 [啟動 Windows 應用程式認證套件],以連線到遠端裝置並執行驗證測試。

  2. WACK 完成且您的應用程式已通過認證後,您就可以將應用程式提交至合作夥伴中心。 請確定您上傳的是正確的檔案。 檔案的預設位置可以在方案的根資料夾中找到 \[AppName]\AppPackages ,而且會以 .appxupload 或 msixupload 副檔名結尾。 [AppName]_[AppVersion]_x86_x64_arm_bundle.appxupload [AppName]_[AppVersion]_x86_x64_arm_bundle.msixupload 如果您選擇應用程式套件組合,且已選取所有套件架構,則名稱將會是表單或。

在遠端 Windows 10 裝置上驗證您的應用程式套件。

  1. 依照啟用您的裝置以進行開發的指示,啟用您的 Windows 10 裝置以進行開發。

    重要

    您無法在適用於 Windows 10 的遠端 ARM 裝置上驗證您的應用程式套件。

  2. 下載和安裝 Visual Studio 遠端工具。 這些工具可用來以遠端方式執行 Windows 應用程式認證套件。 您可以造訪在 遠端電腦上執行 MSIX 應用程式,取得這些工具的詳細資訊,包括下載的位置。

  3. 下載必要的 Windows 應用程式認證套件,然後將它安裝在遠端的 Windows 10 裝置上。

  4. 在嚮導的 [ 封裝建立完成 ] 頁面上,選擇 [ 遠端電腦 ] 選項按鈕,然後選擇 [ 測試連接 ] 按鈕旁邊的省略號按鈕。

    注意

    只有在您至少選取一個支援驗證的方案設定時,才能使用 [ 遠端電腦 ] 選項按鈕。 如需使用 WACK 測試 app 的詳細資訊,請參閱 Windows 應用程式認證套件

  5. 指定您的子網路內的裝置種類,或提供子網路以外的裝置的網域名稱伺服器 (DNS) 名稱或 IP 位址。

  6. 如果您的裝置不需要使用您的 Windows 認證來登入,請在 [驗證模式] 清單中選擇 []。

  7. 選擇 [選取] 按鈕,然後選擇 [啟動 Windows 應用程式認證套件] 按鈕。 如果遠端工具在該裝置上執行,Visual Studio 會與裝置連線,接著執行驗證測試。 請參閱 Windows 應用程式認證套件測試

自動提交商店

從 Visual Studio 2019 開始,您可以直接從 IDE 將產生的 .appxupload 檔案提交至 Microsoft Store,方法是選取 [建立應用程式套件] wizard結尾的 Windows 應用程式認證套件驗證選項之後,自動提交至 Microsoft Store 。 這項功能會利用 Azure Active Directory 來存取發佈應用程式所需的合作夥伴中心帳戶資訊。 若要使用此功能,您必須將 Azure Active Directory 與您的合作夥伴中心帳戶建立關聯,並取出提交所需的數個認證。

將 Azure Active Directory 與您的合作夥伴中心帳戶建立關聯

您必須先在 合作夥伴中心儀表板 中遵循下列步驟,才能取得自動提交提交所需的認證。

  1. 將您的合作夥伴中心帳戶與組織的 Azure Active Directory 產生關聯。 如果您的組織已經使用 Office 365 或其他 Microsoft 所提供的商務服務,您就已經具備 Azure AD。 否則,您可以從合作夥伴中心內建立新的 Azure AD 租使用者,而不需額外付費。

  2. 將 Azure AD 應用程式新增至您的合作夥伴中心帳戶。 此 Azure AD 應用程式代表您將用來存取開發人員中心帳戶提交的應用程式或服務。 您必須將此應用程式指派給 管理員 角色。 如果此應用程式已存在於您的 Azure AD 目錄中,您可以在 [新增 Azure AD 應用程式] 頁面上選取它,將它新增至您的開發人員中心帳戶。 否則,您可以在 [ 新增 Azure AD 應用程式 ] 頁面上建立新的 Azure AD 應用程式。

取出提交所需的認證

接下來,您可以取出提交所需的合作夥伴中心認證: Azure 租使用者識別碼用戶端識別碼用戶端金鑰

  1. 移至 合作夥伴中心儀表板 ,並使用您的 Azure AD 認證登入。

  2. 在合作夥伴中心儀表板上,選取 [儀表板] 右上角附近的齒輪圖示 () 然後選取 [ 開發人員設定]。

  3. 在左窗格的 [設定] 功能表中,按一下 [使用者]。

  4. 按一下 Azure AD 應用程式的名稱,移至應用程式的設定。 在此頁面上,複製 [ 租使用者識別碼 ] 和 [ 用戶端識別碼 ] 值。

  5. 在 [ 金鑰 ] 區段中,按一下 [ 加入新的金鑰]。 在下一個畫面上,複製與用戶端密碼對應的 金鑰 值。 離開此頁面後,您將無法再存取此資訊,因此請務必不要遺失。 如需詳細資訊,請參閱管理 Azure AD 應用程式的金鑰 (部分機器翻譯)。

在 Visual Studio 中設定自動存放提交

完成先前的步驟之後,您可以在 Visual Studio 2019 中設定自動儲存提交。

  1. [建立應用程式套件] 嚮導的結尾,選取 [ Windows 應用程式認證套件驗證之後自動提交至 Microsoft Store ,然後按一下 [重新 設定]。

  2. 在 [設定 Microsoft Store 提交設定] 對話方塊中,輸入 Azure 租使用者識別碼、用戶端識別碼和用戶端金鑰。

    設定 Microsoft Store 提交設定

    重要

    您的認證可以儲存到您的設定檔,以供未來提交使用

  3. 按一下 [確定]。

WACK 測試完成後,即會開始提交。 您可以在 [ 驗證和發佈 ] 視窗中追蹤提交進度。

確認及發佈進度