共用方式為


命令

安裝

步驟 1:安裝 .NET Windows Runtime

如果您尚未安裝,請安裝最新版的 .NET 8 Desktop Runtime。 必須安裝才能執行 Microsoft Store 開發人員 CLI。

最簡單的安裝方式是使用 winget

winget install Microsoft.DotNet.DesktopRuntime.8

步驟 2:在 Windows 上安裝Microsoft市集開發人員 CLI

您可以從 Microsoft Store 下載 Microsoft Store 開發人員 CLI。 您也可以使用 winget

winget install "Microsoft Store Developer CLI"

步驟 1:安裝 .NET macOS Runtime

如果您尚未安裝,請安裝最新版的 .NET 8 Runtime。 必須安裝才能執行 Microsoft Store 開發人員 CLI。

步驟 2:在 macOS 上安裝Microsoft市集開發人員 CLI

您可以從 Microsoft Store 開發人員 CLI 版本頁面下載特定架構 (x64 或 Arm64) 的 macOS .tar.gz。 下載之後,請解壓縮封裝並放入您的 PATH 中,方法如下:

mkdir MSStoreCLI
curl https://github.com/microsoft/msstore-cli/releases/latest/download/MSStoreCLI-osx-x64.tar.gz -o MSStoreCLI-osx-x64.tar.gz
tar -xvf MSStoreCLI-osx-x64.tar.gz -C ./MSStoreCLI
sudo cp -R MSStoreCLI/. /usr/local/bin

您也可以使用 brew

brew install microsoft/msstore-cli/msstore-cli

步驟 1:安裝 .NET Linux Runtime

如果您尚未安裝,請安裝最新版的 .NET 8 Runtime。 必須安裝才能執行 Microsoft Store 開發人員 CLI。

步驟 2:在 Linux 上安裝Microsoft市集開發人員 CLI

您可以從 Microsoft Store 開發人員 CLI 版本頁面下載特定架構 (x64 或 Arm64) 的 Linux .tar.gz。 下載之後,請解壓縮封裝並放入您的 PATH 中,方法如下:

mkdir MSStoreCLI
wget https://github.com/microsoft/msstore-cli/releases/latest/download/MSStoreCLI-linux-x64.tar.gz
tar -xvf MSStoreCLI-linux-x64.tar.gz -C ./MSStoreCLI
sudo cp -R MSStoreCLI/. /usr/local/bin

您也可以使用 brew

brew install microsoft/msstore-cli/msstore-cli

Info 命令

列印現有的組態。

Info 命令 - 使用方式

msstore info

Info 命令 - 選項

選項 描述
-v, --verbose 列印詳細資料輸出。

Reconfigure 命令

重新設定 Microsoft Store 開發人員 CLI。 您可以提供客戶端密碼或憑證。 憑證可以透過其指紋或提供檔案路徑來提供(含或不含密碼)。

重新設定 - 使用方式

msstore reconfigure

重新設定 - 選項

選項 描述
-t, --tenantId 指定應該使用的租用戶識別碼。
-s, --sellerId 指定應該使用的賣方識別碼。
-c, --clientId 指定應該使用的用戶端識別碼。
-cs, --clientSecret 指定應該使用的用戶端密碼。
-ct, --certificateThumbprint 指定應該使用的憑證指紋。
-cfp、 --certificateFilePath 指定應該使用的憑證檔案路徑。
-cp、 --certificatePassword 指定應該使用的憑證密碼。
--reset 只重設認證,而不需重新開始。

Settings 命令

變更 Microsoft Store 開發人員 CLI 的設定。

設定 - 使用方式

msstore settings
子命令 描述
setpdn 設定 init 命令所使用的發行者顯示名稱屬性。

設定 -選項

選項 描述
-t, --enableTelemetry 啟用 (empty/true) 或停用 (false) 遙測。
-v, --verbose 列印詳細資料輸出。

設定 - SetPDN 命令使用方式

msstore settings setpdn <publisherDisplayName>

引數

Argument 描述
publisherDisplayName 將會全域設定的發行者顯示名稱屬性。

說明

msstore settings setpdn --help

應用程式命令

子命令 描述
list 列出您帳戶中的所有應用程式。
get 取得特定應用程式的詳細資料。

應用程式 - 列出命令使用方式

msstore apps list

列出命令 - 說明

msstore apps list --help

應用程式 - 取得命令使用方式

msstore apps get <productId>

應用程式 - 取得命令自變數

Argument 描述
productId 產品識別碼。

應用程式 - 取得命令說明

msstore apps get --help

提交項目命令

子命令 描述
status 取得提交的狀態。
get 取得特定提交的詳細資料。
getListingAssets 取得特定提交的清單資產。
updateMetadata 更新特定提交的中繼資料。
update 更新特定提交的詳細資料。
輪詢 輪詢提交的狀態。
publish 發佈特定提交。
delete 刪除特定提交。

提交 - 狀態命令使用方式

msstore submission status <productId>

提交 - 狀態命令自變數

Argument 描述
productId 產品識別碼。

提交 - 狀態命令說明

msstore submission status --help

提交 - 取得命令使用方式

msstore submission get <productId>

提交 - 取得命令自變數

Argument 描述
productId 產品識別碼。

提交 - 取得命令選項

選項 描述
-m, --module 選取您要擷取的模組 (「availability」、「listings」或「properties」)。
-l, --language 選取您要擷取的語言。 [default: en]

提交 - 取得命令說明

msstore submission get --help

提交 - GetListingAssets 命令使用方式

從 Store 提交擷取現有的草稿清單資產。

msstore submission getListingAssets <productId>

提交 - GetListingAssets 命令自變數

Argument 描述
productId 產品識別碼。

提交 - GetListingAssets 命令選項

選項 描述
-l, --language 選取您要擷取的語言。 [default: en]

提交 - GetListingAssets 命令說明

msstore submission getListingAssets --help

提交 - UpdateMetadata 命令使用方式

msstore submission updateMetadata <productId> <metadata>

提交 - UpdateMetadata 命令自變數

Argument 描述
productId 產品識別碼。
metadata 更新的 JSON 中繼資料表示法。

提交 - UpdateMetadata 命令選項

選項 描述
-s, --skipInitialPolling 在執行動作之前略過初始輪詢。 [default: False]

提交 - UpdateMetadata 命令說明

msstore submission updateMetadata --help

提交 - 更新命令使用方式

msstore submission update <productId> <product>

提交 - 更新命令自變數

Argument 描述
productId 產品識別碼。
product 更新的 JSON 產品表示法。

提交 - 更新命令選項

選項 描述
-s, --skipInitialPolling 在執行動作之前略過初始輪詢。 [default: False]

提交 - 更新命令說明

msstore submission update --help

提交 - 輪詢命令使用方式

msstore submission poll <productId>

提交 - 輪詢命令自變數

Argument 描述
productId 產品識別碼。

提交 - 輪詢命令說明

msstore submission poll --help

提交 - 發佈命令使用方式

msstore submission publish <productId>

提交 - 發佈命令自變數

Argument 描述
productId 產品識別碼。

提交 - 發佈命令說明

msstore submission publish --help

提交 - 刪除命令使用方式

從存放區刪除擱置的提交。

提交 - 刪除命令自變數

Argument 描述
productId 產品識別碼。

提交 - 刪除命令選項

選項 描述
--no-confirm 不提示確認。 [default: False]

提交 - 刪除命令說明

msstore submission delete --help

Init 命令

init 命令可協助您設定應用程式以發佈至 Microsoft Store。 目前支援下列應用程式類型:

  • Windows 應用程式 SDK/WinUI 3
  • UWP
  • .NET MAUI
  • Flutter
  • Electron
  • React Native for Desktop
  • PWA

Init 命令 - 使用範例

Init 命令 - Windows 應用程式 SDK/WinUI 3

msstore init "C:\path\to\winui3_app"

Init 命令 - UWP

msstore init "C:\path\to\uwp_app"

Init 命令 - .NET MAUI

msstore init "C:\path\to\maui_app"

Init 命令 - Flutter

msstore init "C:\path\to\flutter_app"

Init 命令 - 電子

msstore init "C:\path\to\electron_app"

Init 命令 - React Native for Desktop

msstore init "C:\path\to\react_native_app"

注意

針對電子,以及適用於傳統型專案的 React Native, Npm 都支援 和 YarnYarn 鎖定檔案 (yarn.lock) 將用來判斷要使用的套件管理員,因此請務必將鎖定檔案簽入原始程式碼控制系統。

Init 命令 - PWA

msstore init https://contoso.com --output .

Init 命令 - 自變數

Argument 描述
pathOrUrl 專案檔案所在的根目錄路徑,或指向 PWA 的公用 URL。

Init 命令 - 選項

選項 描述
-n, --publisherDisplayName 用來設定應用程式的發行者顯示名稱。 如果提供,請避免發出額外的 API 呼叫。
--package 如果應用程式類型支援,則會自動封裝專案。
--publish 如果應用程式類型支援,則會自動發佈專案。 Implies '--package true'
-f, --flightId 指定發行套件的位置正式發行前小眾測試版標識碼。
-prp, --packageRolloutPercentage 指定套件的推出百分比。 值必須介於 0 到 100 之間。
-a, --arch 要建置的架構。 如果未提供,則會使用目前作業系統的預設架構和專案類型。 允許的值:「x86」、「x64」、「arm64」。 只與「--package true」搭配使用。
-o, --output 將儲存已封裝應用程式的輸出目錄。 如果未提供,則會使用每個不同類型應用程式的預設目錄。
-ver, --version 建置應用程式時所使用的版本。 如果未提供,則會使用專案檔案中的版本。

Package 命令

協助您將 Microsoft Store 應用程式封裝為 MSIX。

套件命令 - 使用範例

套件命令 - Windows 應用程式 SDK/WinUI 3

msstore package "C:\path\to\winui3_app"

套件命令 - UWP

msstore package "C:\path\to\uwp_app"

套件命令 - .NET MAUI

msstore package "C:\path\to\maui_app"

套件命令 - Flutter

msstore package "C:\path\to\flutter_app"

封裝命令 - 電子

msstore package "C:\path\to\electron_app"

套件命令 - React Native for Desktop

msstore package "C:\path\to\react_native_app"

套件命令 - PWA

msstore package "C:\path\to\pwa_app"

封裝命令 - 自變數

選項 描述
pathOrUrl 專案檔案所在的根目錄路徑,或指向 PWA 的公用 URL。

套件命令 - 選項

選項 描述
-o, --output 將儲存已封裝應用程式的輸出目錄。 如果未提供,則會使用每個不同類型應用程式的預設目錄。
-a, --arch 要建置的架構。 如果未提供,則會使用目前作業系統的預設架構和專案類型。 允許的值:「x86」、「x64」、「arm64」。
-ver, --version 建置應用程式時所使用的版本。 如果未提供,則會使用專案檔案中的版本。

Publish 命令

將您的應用程式發佈至 Microsoft Store。

發佈命令 - 使用範例

發佈命令 - Windows 應用程式 SDK/WinUI 3

msstore publish "C:\path\to\winui3_app"

發佈命令 - UWP

msstore publish "C:\path\to\uwp_app"

發佈命令 - .NET MAUI

msstore publish "C:\path\to\maui_app"

發佈命令 - Flutter

msstore publish "C:\path\to\flutter_app"

發佈命令 - 電子

msstore publish "C:\path\to\electron_app"

發佈命令 - React Native for Desktop

msstore publish "C:\path\to\react_native_app"

發佈命令 - PWA

msstore publish "C:\path\to\pwa_app"

發佈命令 - 自變數

選項 描述
pathOrUrl 專案檔案所在的根目錄路徑,或指向 PWA 的公用 URL。

發佈命令 - 選項

選項 描述
-i, --inputDirectory 要用於發佈命令之「.msix」或「.msixupload」檔案的目錄。 如果未提供,cli 會嘗試根據「pathOrUrl」引數尋找最佳候選目錄。
-id, --appId 指定應用程式識別碼。只有在專案之前未使用「init」命令初始化時才需要。
-nc, --noCommit 停用認可提交,使其保持在草稿狀態。
-f, --flightId 指定發行套件的位置正式發行前小眾測試版標識碼。
-prp, --packageRolloutPercentage 指定套件的推出百分比。 值必須介於 0 到 100 之間。

CI/CD 環境

Microsoft Store 開發人員 CLI (預覽版) 支援在 CI/CD 環境中執行。 這表示您可以在 CI/CD 管線中使用 Microsoft Store 開發人員 CLI (預覽版),例如自動將應用程式發佈至 Microsoft Store。

達成此目的的第一個步驟,就是在您的 CI/CD 環境中安裝 Microsoft Store 開發人員 CLI (預覽版)。 您可以在這裡找到執行這項操作的指示。

安裝 Microsoft Store 開發人員 CLI (預覽版) 之後,您必須設定環境才能執行命令。 您可以使用識別合作夥伴中心帳戶的特定參數來執行命令,以執行此命令(TenantIdSellerId、ClientId)。msstore reconfigure 您也需要提供 ClientSecret憑證

這些認證會顯示在 CI/CD 管線的記錄中,因此請務必隱藏起來。 您可以使用密碼來保護認證。 每個 CI/CD 管線系統都使用不同的名稱來代表這些密碼。 例如,Azure DevOps 將其稱為秘密變數,GitHub Action 則稱為加密密碼。 為每個參數建立一個秘密(TenantId、SellerIdClientIdClientSecretCertificate),然後使用 reconfigure 命令來設定環境。

例如:

Azure DevOps

- task: UseMSStoreCLI@0
  displayName: Setup Microsoft Store Developer CLI
- script: msstore reconfigure --tenantId $(PARTNER_CENTER_TENANT_ID) --sellerId $(PARTNER_CENTER_SELLER_ID) --clientId $(PARTNER_CENTER_CLIENT_ID) --clientSecret $(PARTNER_CENTER_CLIENT_SECRET)
  displayName: Configure Microsoft Store Developer CLI

GitHub 動作

- name: Setup Microsoft Store Developer CLI
  uses: microsoft/setup-msstore-cli@v1
- name: Configure Microsoft Store Developer CLI
  run: msstore reconfigure --tenantId ${{ secrets.PARTNER_CENTER_TENANT_ID }} --sellerId ${{ secrets.PARTNER_CENTER_SELLER_ID }} --clientId ${{ secrets.PARTNER_CENTER_CLIENT_ID }} --clientSecret ${{ secrets.PARTNER_CENTER_CLIENT_SECRET }}

執行此命令之後,Microsoft Store 開發人員 CLI (預覽版) 會設定為使用所提供的認證。 您現在可以在 CI/CD 管線中使用 Microsoft Store 開發人員 CLI (預覽版)。