Comandos (MSIX)

Instalação

Etapa 1: Instalar .NET Windows Runtime

Se você ainda não fez isso, instale a versão mais recente do .NET 9 Desktop Runtime. Esse é um requisito para executar a CLI do desenvolvedor do Microsoft Store.

A maneira mais fácil de instalá-la é usar winget:

winget install Microsoft.DotNet.DesktopRuntime.9

Etapa 2: instalar a CLI do desenvolvedor do Microsoft Store no Windows

Você pode baixar a CLI de Desenvolvedor da Microsoft Store na Microsoft Store. Como alternativa, você pode usar o winget:

winget install "Microsoft Store Developer CLI"

Etapa 1: Instalar .NET runtime do macOS

Se você ainda não fez isso, instale a versão mais recente do .NET 9 Runtime. Esse é um requisito para executar a CLI do desenvolvedor do Microsoft Store.

Etapa 2: Instalar a CLI do desenvolvedor do Microsoft Store no macOS

Você pode baixar o macOS .tar.gz para sua arquitetura específica (x64 ou Arm64) na página de lançamentos da CLI de Desenvolvedores da Microsoft Store. Uma vez baixado, extraia o arquivo e coloque-o em seu PATH, como preferir, por exemplo:

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

Como alternativa, você pode usar brew:

brew install microsoft/msstore-cli/msstore-cli

Etapa 1: Instalar .NET Runtime do Linux

Se você ainda não fez isso, instale a versão mais recente do .NET 9 Runtime. Esse é um requisito para executar a CLI do desenvolvedor do Microsoft Store.

Etapa 2: Instalar a CLI do desenvolvedor Microsoft Store no Linux

Você pode baixar o .tar.gz do Linux para sua arquitetura específica (x64 ou Arm64) na página de versões da Developer CLI da Microsoft Store. Uma vez baixado, extraia o arquivo e coloque-o em seu PATH, como preferir, por exemplo:

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

Como alternativa, você pode usar brew:

brew install microsoft/msstore-cli/msstore-cli

Comando Info

Imprima a configuração existente.

Usage

msstore info

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Comando Reconfigure

Configure novamente a CLI do Desenvolvedor do Microsoft Store. Você pode fornecer um Segredo do Cliente ou um Certificado. Os certificados podem ser fornecidos por meio de sua impressão digital ou fornecendo um caminho de arquivo (com ou sem senha).

Usage

msstore reconfigure

Opções

Opção Descrição
-t, --tenantId Especifique a ID do locatário que deve ser usada.
-s, --sellerId Especifique a ID do vendedor que deve ser usada.
-c, --identificadorDoCliente Especifique a ID do cliente que deve ser usada.
-cs, --segredoDoCliente Especifique o segredo do cliente que deve ser usado.
-ct, --certificateThumbprint Especifique a impressão digital do certificado que deve ser usada.
-cfp, --certificateFilePath Especifique o caminho do arquivo de certificado que deve ser usado.
-cp, --certificatePassword Especifique a senha do certificado que deve ser usada.
--reset Apenas redefina as credenciais, sem começar de novo.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Comando de configurações

Altere as configurações da CLI do Desenvolvedor do Microsoft Store.

Usage

msstore settings

Opções

Opção Descrição
-t, --enableTelemetry (habilitar telemetria) Telemetria: Ativar (vazio/verdadeiro) ou Desativar (falso).
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Comando secundário SetPDN

Define a propriedade Nome de Exibição do Editor que é usada pelo comando init.

Usage

msstore settings setpdn <publisherDisplayName>

Argumentos

Argumento Descrição
publisherDisplayName A propriedade Nome de Exibição do Editor que será definida globalmente.

Opções

Opção Descrição
-?, -h, --help Mostrar informações de ajuda e uso.

Comando de Aplicativos

Subcomando Descrição
lista Lista todos os aplicativos em sua conta.
Obter Obtém os detalhes de um aplicativo específico.

Aplicativos – Lista – Uso

msstore apps list

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Aplicativos – Baixar – Utilização

msstore apps get <productId>

Argumentos

Argumento Descrição
productId O ID do produto da loja.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Comando de Submissão

Subcomando Descrição
estado Obtém o status de um envio.
Obter Obtém os metadados e as informações do pacote de um envio específico.
getListingAssets Obtém os ativos de listagem de um envio específico.
updateMetadata Atualiza os metadados de um envio específico.
atualização Atualiza o pacote de uma submissão específica.
pesquisa Sonda o status de um envio.
publicar Publica uma submissão específica.
excluir Exclui um envio específico.
Implantação Executar operações relacionadas à distribuição gradual de pacotes.

Envio – Status – Uso

msstore submission status <productId>

Argumentos

Argumento Descrição
productId O ID do produto da loja.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio – Obter – Uso

msstore submission get <productId>

Argumentos

Argumento Descrição
productId O ID do produto da loja.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio – GetListingAssets – Uso

msstore submission getListingAssets <productId>

Argumentos

Argumento Descrição
productId O ID do produto da loja.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio – AtualizarMetadados – Uso

msstore submission updateMetadata <productId> <metadata>

Observação

Para aplicativos MSIX/em pacote, submission updateMetadata e submission update são equivalentes — ambos enviam o JSON completo da submissão retornado por submission get, portanto qualquer um dos comandos pode atualizar descrições e pacotes ao mesmo tempo.

Os dois diferem apenas no caso de aplicativos não empacotados (MSI/EXE), em que o ID do produto é um GUID: updateMetadata atualiza os metadados da listagem na Store, enquanto update atualiza os pacotes.

Argumentos

Argumento Descrição
productId O ID do produto da loja.
metadata A representação de metadados JSON atualizada.

Opções

Opção Descrição
-s, --skipInitialPolling Ignore a sondagem inicial antes de executar a ação. [padrão: Falso]
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio – Atualização – Uso

msstore submission update <productId> <package>

Argumentos

Argumento Descrição
productId O ID do produto da loja.
package A representação JSON atualizada do pacote do aplicativo.

Opções

Opção Descrição
-s, --skipInitialPolling Ignore a sondagem inicial antes de executar a ação. [padrão: Falso]
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Dica

Use submission get para recuperar o JSON do pacote atual antes de chamar submission update. Isso garante que você esteja trabalhando com a estrutura correta e os valores atuais. Por exemplo, no PowerShell:

# Step 1: Retrieve the current submission package JSON
msstore submission get <productId> | Out-File -Encoding utf8 package.json

# Step 2: Edit package.json to reflect your changes

# Step 3: Pass the updated JSON to submission update
$updatedPackage = Get-Content -Raw package.json
msstore submission update <productId> $updatedPackage

Para obter mais contexto, consulte Publish atualizações de aplicativo para Microsoft Store com GitHub Actions.

Envio – Votação – Uso

msstore submission poll <productId>

Argumentos

Argumento Descrição
productId O ID do produto da loja.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio – Publicar – Uso

msstore submission publish <productId>

Argumentos

Argumento Descrição
productId O ID do produto da loja.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio – Excluir – Uso

msstore submission delete <productId>

Argumentos

Argumento Descrição
productId O ID do produto da loja.

Opções

Opção Descrição
--no-confirm Não solicite confirmação. [padrão: Falso]
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio — comando de distribuição

Use esses subcomandos para gerenciar uma distribuição gradual de pacotes para um envio de versão completa. Para gerenciar uma distribuição direcionada a uma disponibilização de versão piloto do pacote, use msstore flights submission rollout em vez disso.

Esses comandos têm suporte apenas para aplicativos empacotados/MSIX. Se o ID da submissão for omitido, a CLI usa a submissão pendente do aplicativo, recorrendo à última publicada. | Subcomando | Descrição | | -------------------------------------------------------- | -------------------------------------------------- | | get | Recupera o status da distribuição de um envio. | | atualização | Atualiza o percentual de distribuição de um envio. | | interromper | Interrompe a distribuição de um envio. | | finalizar | Finaliza a distribuição de um envio. |

Observação

Uma distribuição precisa estar habilitada no envio antes que esses comandos possam atuar nela. Habilite-o no momento da publicação com msstore publish --packageRolloutPercentage, ou definindo packageDeliveryOptions.packageRollout no JSON passado para submission update.

Envio — Uso do comando Get de distribuição

msstore submission rollout get <productId>

Envio — Argumentos do comando Get de distribuição

Argumento Descrição
productId O ID do produto da loja.

Envio — Opções de comando Get de distribuição

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Envio — Ajuda do comando Get de distribuição

msstore submission rollout get --help

Envio — Uso do Comando de Atualização de Distribuição

msstore submission rollout update <productId> <percentage>

Submissão — Distribuição de Argumentos do Comando Update

Argumento Descrição
productId O ID do produto da loja.
percentage A porcentagem de usuários que receberão a distribuição do envio (0 a 100).

Submissão — Distribuição de Opções do Comando Update

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Submissão — Distribuição de Ajuda do Comando Update

msstore submission rollout update --help

Submissão — Distribuição de Uso do Comando Halt

msstore submission rollout halt <productId>

Submissão — Distribuição de Argumentos do Comando Halt

Argumento Descrição
productId O ID do produto da loja.

Submissão — Distribuição de Opções do Comando Halt

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Submissão — Distribuição de Ajuda do Comando Halt

msstore submission rollout halt --help

Submissão — Distribuição de Uso do Comando Finalize

msstore submission rollout finalize <productId>

Submissão — Distribuição de Argumentos do Comando Finalize

Argumento Descrição
productId O ID do produto da loja.

Submissão — Distribuição de Opções do Comando Finalize

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Submissão — Distribuição de Opções do Comando Finalize

msstore submission rollout finalize --help

Exemplo: publicar uma atualização e distribuí-la gradualmente

O exemplo do PowerShell a seguir faz upload de um pacote, atualiza as notas de versão, inicia a distribuição em 5% e, em seguida, aumenta o percentual e o finaliza.

$productId = '<productId>'

# 1. Upload the package but leave the submission in draft.
#    'publish' recreates the draft, so it has to run before any metadata edits.
msstore publish 'C:\path\to\app' --noCommit

# 2. Update the metadata and enable the rollout in a single call.
$submission = msstore submission get $productId | ConvertFrom-Json
$submission.Listings.'en-us'.BaseListing.ReleaseNotes = 'Bug fixes and improvements'
$submission.PackageDeliveryOptions.PackageRollout.IsPackageRollout = $true
$submission.PackageDeliveryOptions.PackageRollout.PackageRolloutPercentage = 5
msstore submission update $productId ($submission | ConvertTo-Json -Depth 100 -Compress)

# 3. Commit the submission and wait for it to publish.
msstore submission publish $productId
msstore submission poll $productId

# 4. Increase the rollout over time, without uploading the package again.
msstore submission rollout update $productId 20

# 5. Roll out to all customers (or use 'halt' to stop the rollout).
msstore submission rollout finalize $productId

Important

Se o aplicativo já tiver um envio publicado, msstore publish excluirá o rascunho pendente e criará um novo do último envio publicado, descartando as alterações de metadados já preparadas nesse rascunho. Execute publishantes de atualizar metadados, não depois.

Comandos de voos

Subcomando Descrição
lista Recupera todos os voos para o aplicativo especificado.
Obter Recupera um voo para a Aplicação e o voo especificados.
excluir Exclui uma disponibilização de versão piloto para o aplicativo e a disponibilização de versão piloto especificados.
create Cria uma versão piloto para o aplicativo e a versão piloto especificados.
submissão Execute tarefas relacionadas a envios de disponibilização de versão piloto.

Disponibilização de versão piloto — Listar comandos de uso

msstore flights list <productId>

Voos – Listar argumentos de comando

Argumento Descrição
productId A ID do produto.

Disponibilização de versão piloto — Ajuda do comando de listar

msstore flights list --help

Disponibilização de versão piloto — Uso do comando Get

msstore flights get <productId> <flightId>

Disponibilização de versão piloto — Argumentos do comando Get

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Voos – Obter ajuda de comando

msstore flights get --help

Disponibilização de versão piloto — Uso do comando de exclusão

msstore flights delete <productId> <flightId>

Voos – Excluir argumentos de comando

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Ajuda do comando de exclusão

msstore flights delete --help

Disponibilização de versão piloto — Uso do comando de criação

msstore flights create <productId> <friendlyName> --group-ids <group-ids>

Voos – Criar argumentos de comando

Argumento Descrição
productId A ID do produto.
friendlyName O nome amigável do voo.

Voos – Criar opções de comando

Opção Descrição
-g, --group-ids (identificadores de grupo) As IDs do grupo a serem associadas à disponibilização de versão piloto.
-r, --rank-higher-than O identificador da versão piloto a receber maior classificação.

Disponibilização de versão piloto — Ajuda do comando de criação

msstore flights create --help

Flights – Comando de envio

Subcomando Descrição
Obter Recupera o envio da versão piloto do pacote de teste existente, seja o rascunho atual ou a última versão publicada.
excluir Exclui o envio da versão piloto do pacote pendente da loja.
atualização Atualiza o rascunho de voo existente com o JSON fornecido.
publicar Inicia o processo de envio da versão piloto para o rascunho existente.
pesquisa Continua verificando até que o envio da versão piloto existente seja PUBLICADA ou FALHE.
estado Recupera o status atual do envio da versão piloto da loja.
Implantação Execute operações relacionadas à distribuição da versão piloto.

Disponibilização de versão piloto — Uso do comando Get de envio

msstore flights submission get <productId> <flightId>

Disponibilização de versão piloto — Argumentos do comando Get de envio

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Ajuda do comando Get de envio

msstore flights submission get --help

Disponibilização de versão piloto — Uso do comando de exclusão de envio

msstore flights submission delete <productId> <flightId>

Disponibilização de versão piloto — Argumentos do comando de exclusão de envio

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Ajuda do comando de exclusão de envio

msstore flights submission delete --help

Disponibilização de versão piloto — Uso do comando de atualização de envio

msstore flights submission update <productId> <flightId> <product>

Disponibilização de versão piloto — Argumentos do comando de atualização de envio

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.
product A representação de produto JSON atualizada.

Disponibilização de versão piloto — Opções de comando de atualização de envio

Opção Descrição
-s, --skipInitialPolling Ignore a sondagem inicial antes de executar a ação. [padrão: Falso]

Disponibilização de versão piloto — Ajuda do comando de atualização de envio

msstore flights submission update --help

Disponibilização de versão piloto — Uso do comando de publicação do envio

msstore flights submission publish <productId> <flightId>

Disponibilização de versão piloto — Argumentos de comando de publicação de envio

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Ajuda do comando de publicação de envio

msstore flights submission publish --help

Disponibilização de versão piloto — Uso do comando de sondagem de envio

msstore flights submission poll <productId> <flightId>

Disponibilização de versão piloto — Argumentos do comando de sondagem de envio

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Ajuda do comando de sondagem de envio

msstore flights submission poll --help

Disponibilização de versão piloto — Uso do comando de status de envio

msstore flights submission status <productId> <flightId>

Disponibilização de versão piloto — Argumentos de comando de status de envio

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Ajuda do comando de status de envio

msstore flights submission status --help

Disponibilização de versão piloto — Envio — Comando de distribuição

Subcomando Descrição
Obter Recupera o status de distribuição da versão piloto de um envio.
atualização Atualizar o percentual de distribuição da versão piloto de um envio.
Parar Interrompe a distribuição da versão piloto de um envio.
Finalizar Finaliza a distribuição da versão piloto de um envio.

Disponibilização de versão piloto — Envio — Uso do comando get de distribuição

msstore flights submission rollout get <productId> <flightId>

Disponibilização de versão piloto — Envio — Argumentos do comando Get de distribuição

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Envio — Opções do comando Get de distribuição

Opção Descrição
-s, --ID de submissão O ID de submissão.

Disponibilização de versão piloto — Envio — Ajuda do comando Get de distribuição

msstore flights submission rollout get --help

Disponibilização de versão piloto — Envio — Uso do comando de atualização de distribuição

msstore flights submission rollout update <productId> <flightId> <percentage>

Disponibilização de versão piloto — Envio — Argumentos do comando de atualização de distribuição

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.
percentage A porcentagem de usuários que receberão a distribuição do envio.

Disponibilização de versão piloto — Envio — Opções de comando de atualização de distribuição

Opção Descrição
-s, --ID de submissão O ID de submissão.

Disponibilização de versão piloto — Envio — Ajuda do comando de atualização de distribuição

msstore flights submission rollout update --help

Disponibilização de versão piloto — Envio — Uso do comando de interrupção de distribuição

msstore flights submission rollout halt <productId> <flightId>

Disponibilização de versão piloto — Envio — Argumentos do comando de interrupção de distribuição

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Envio — Opções do comando de interrupção de distribuição

Opção Descrição
-s, --ID de submissão O ID de submissão.

Disponibilização de versão piloto — Envio — Ajuda do comando de interrupção de distribuição

msstore flights submission rollout halt --help

Disponibilização de versão piloto — Envio — Uso do comando de finalização da distribuição

msstore flights submission rollout finalize <productId> <flightId>

Disponibilização de versão piloto — Envio — Argumentos do comando de finalização da distribuição

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Disponibilização de versão piloto — Envio — Opções do comando de finalização da distribuição

Opção Descrição
-s, --ID de submissão O ID de submissão.

Disponibilização de versão piloto — Envio — Ajuda do comando de finalização da distribuição

msstore flights submission rollout finalize --help

Comando Init

O comando init ajuda você a configurar seu aplicativo para publicar no Microsoft Store. Atualmente, ele suporta os seguintes tipos de aplicativos:

  • WinUI
  • .NET MAUI
  • Flutter
  • Elétron
  • React Native para desktop
  • PWA
  • UWP

Exemplos de uso

SDK de Aplicativos do Windows/WinUI

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

UWP

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

.NET MAUI

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

Flutter

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

Elétron

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

React Native para desktop

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

Observação

Para projetos Electron, bem como para o React Native para Desktop, ambos Npm e Yarn são suportados. A presença do arquivo de bloqueio Yarn (yarn.lock) será usada para determinar qual gerenciador de pacotes usar, portanto, certifique-se de fazer check-in do arquivo de bloqueio no sistema de controle do código-fonte.

PWA

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

Argumentos

Argumento Descrição
pathOrUrl O caminho do diretório raiz onde está o arquivo do projeto ou uma URL pública que aponta para um PWA.

Opções

Opção Descrição
-n, --publisherDisplayName O Nome de Exibição do Publicador usado para configurar o aplicativo. Se fornecido, evita uma chamada extra de APIs.
--package Se compatível com o tipo de aplicativo, empacota automaticamente o projeto.
--publicar Se houver suporte no tipo de aplicativo, publicará automaticamente o projeto. Implica '--package true'
-f, --flightId Especifica a ID de Voo em que o pacote será publicado.
-prp, --packageRolloutPercentage Especifica a porcentagem de distribuição do pacote. O valor precisa estar entre 0 e 100.
-a, --arch A(s) arquitetura(s) para a qual construir. Se não for fornecido, a arquitetura padrão para o sistema operacional atual e o tipo de projeto serão usados. Valores permitidos: "x86", "x64", "arm64". Usado apenas em conjunto com "--package true".
-o, --output O diretório de saída em que o aplicativo empacotado será armazenado. Se não for fornecido, o diretório padrão para cada tipo diferente de aplicativo será usado.
-ver, --version A versão usada ao criar o aplicativo. Se não for fornecida, a versão do arquivo de projeto será usada.

Comando Pacote

Ajuda você a empacotar seu aplicativo Microsoft Store como um MSIX.

Exemplos de uso

SDK de Aplicativos do Windows/WinUI

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

WinUI

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

.NET MAUI

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

Flutter

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

Elétron

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

React Native para desktop

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

PWA

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

Argumentos

Opção Descrição
pathOrUrl O caminho do diretório raiz onde está o arquivo do projeto ou uma URL pública que aponta para um PWA.

Opções

Opção Descrição
-o, --output O diretório de saída em que o aplicativo empacotado será armazenado. Se não for fornecido, o diretório padrão para cada tipo diferente de aplicativo será usado.
-a, --arch A(s) arquitetura(s) para a qual construir. Se não for fornecido, a arquitetura padrão para o sistema operacional atual e o tipo de projeto serão usados. Valores permitidos: "x86", "x64", "arm64".
-ver, --version A versão usada ao criar o aplicativo. Se não for fornecida, a versão do arquivo de projeto será usada.

Comando Publicar

Publica seu aplicativo no Microsoft Store.

Exemplos de uso

SDK de Aplicativos do Windows/WinUI

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

WinUI

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

.NET MAUI

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

Flutter

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

Elétron

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

React Native para desktop

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

PWA

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

Argumentos

Opção Descrição
pathOrUrl O caminho do diretório raiz onde está o arquivo do projeto ou uma URL pública que aponta para um PWA.

Opções

Opção Descrição
-i, --inputFile O caminho para o arquivo ".msix" ou ".msixupload" será usado para o comando de publicação. Se não for fornecido, o cli tentará encontrar o melhor candidato com base no argumento 'pathOrUrl'.
-id, --appId Especifica o ID do aplicativo. Necessário somente se o projeto não tiver sido inicializado antes com o comando "init".
-nc, --noCommit (opção para não confirmar automaticamente) Desabilita a confirmação do envio, mantendo-o no estado de rascunho.
-f, --flightId Especifica a ID de Voo em que o pacote será publicado.
-prp, --packageRolloutPercentage Especifica a porcentagem de distribuição do pacote. O valor precisa estar entre 0 e 100.

Comando de Voos

Subcomando Descrição
lista Recupera todos os voos para o aplicativo especificado.
Obter Recupera um voo para a Aplicação e o voo especificados.
excluir Exclui uma disponibilização de versão piloto para o aplicativo e a disponibilização de versão piloto especificados.
create Cria uma versão piloto para o aplicativo e a versão piloto especificados.
submissão Execute tarefas relacionadas a envios de disponibilização de versão piloto.

Voos – Lista – Uso

msstore flights list <productId>

Argumentos

Argumento Descrição
productId A ID do produto.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Disponibilização de versão piloto — Get — Uso

msstore flights get <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Voos – Excluir – Uso

msstore flights delete <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Disponibilização de versão piloto — Criar — Uso

msstore flights create <productId> <friendlyName> --group-ids <group-ids>

Argumentos

Argumento Descrição
productId A ID do produto.
friendlyName O nome amigável do voo.

Opções

Opção Descrição
-g, --group-ids (identificadores de grupo) As IDs do grupo a serem associadas à disponibilização de versão piloto.
-r, --rank-higher-than O identificador da versão piloto a receber maior classificação.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Disponibilização de versão piloto — Envio

Subcomando Descrição
Obter Recupera o envio da versão piloto do pacote de teste existente, seja o rascunho atual ou a última versão publicada.
excluir Exclui o envio da versão piloto do pacote pendente da loja.
atualização Atualiza o rascunho de voo existente com o JSON fornecido.
publicar Inicia o processo de envio da versão piloto para o rascunho existente.
pesquisa Continua verificando até que o envio da versão piloto existente seja PUBLICADA ou FALHE.
estado Recupera o status atual do envio da versão piloto da loja.
Implantação Execute operações relacionadas à distribuição da versão piloto.

Voos – Envio – Obter – Uso

msstore flights submission get <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Voos – Envio – Exclusão – Uso

msstore flights submission delete <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
--no-confirm Não solicite confirmação.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Voos – Envio – Atualização – Uso

msstore flights submission update <productId> <flightId> <product>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.
product A representação de produto JSON atualizada.

Opções

Opção Descrição
-s, --skipInitialPolling Ignore a sondagem inicial antes de executar a ação. [padrão: Falso]
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Voos – Submissão – Publicação – Uso

msstore flights publish <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Voos – Envio – Sondagem – Uso

msstore flights poll <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Voos – Envio – Status – Uso

msstore flights status <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Disponibilização de versão piloto — Envio — Distribuição

Subcomando Descrição
Obter Recupera o status de distribuição da versão piloto de um envio.
atualização Atualizar o percentual de distribuição da versão piloto de um envio.
Parar Interrompe a distribuição da versão piloto de um envio.
Finalizar Finaliza a distribuição da versão piloto de um envio.

Disponibilização de versão piloto — Envio — Distribuição — Get — Uso

msstore flights submission rollout get <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Disponibilização de versão piloto — Envio — Distribuição — Atualização — Uso

msstore flights submission rollout update <productId> <flightId> <percentage>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.
percentage A porcentagem de usuários que receberão a distribuição do envio.

Opções

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Disponibilização de versão piloto — Envio — Distribuição — Interrupção — Uso

msstore flights submission rollout halt <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Disponibilização de versão piloto — Envio — Distribuição — Finalizar — Uso

msstore flights submission rollout finalize <productId> <flightId>

Argumentos

Argumento Descrição
productId A ID do produto.
flightId O ID do voo.

Opções

Opção Descrição
-s, --ID de submissão O ID de submissão.
-v, --verbose Imprima a saída detalhada.
-?, -h, --help Mostrar informações de ajuda e uso.

Ambientes de CI/CD

A CLI do Desenvolvedor do Microsoft Store (versão prévia) dá suporte à execução em ambientes de CI/CD. Isso significa que você pode usar a CLI do Desenvolvedor do Microsoft Store (versão prévia) em seus pipelines de CI/CD para, por exemplo, publicar automaticamente seus aplicativos no Microsoft Store.

O primeiro passo para alcançar isso é instalar a CLI do Desenvolvedor do Microsoft Store (versão prévia) no seu ambiente de CI/CD. Você pode encontrar instruções sobre como fazer isso aqui.

Depois de instalar a CLI do Desenvolvedor do Microsoft Store (versão prévia), você precisa configurar seu ambiente para poder executar comandos. Você pode fazer isso executando o msstore reconfigure comando com os parâmetros específicos que identificam sua conta do Partner Center (TenantId, SellerId, ClientId). Você também precisa fornecer um ClientSecret ou um Certificate.

É muito importante ocultar essas credenciais, pois elas ficarão visíveis nos logs do seu pipeline de CI/CD. Você pode fazer isso usando segredos. Cada sistema de pipeline de CI/CD usa nomes diferentes para esses segredos. Por exemplo, o Azure DevOps as chama de Secret Variables, mas o GitHub Actions as chama de Encrypted Secrets. Crie um segredo para cada um dos parâmetros (TenantId, SellerId, ClientId e ClientSecret ou um Certificado) e use o reconfigure comando para configurar seu ambiente.

Por exemplo:

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 Actions

- name: Setup Microsoft Store Developer CLI
  uses: microsoft/microsoft-store-apppublisher@v1.1
- 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 }}

Depois que esse comando for executado, a CLI do desenvolvedor do Microsoft Store (versão prévia) será configurada para usar as credenciais fornecidas. Agora você pode usar a CLI do Microsoft Store para desenvolvedores (versão prévia) no pipeline de CI/CD.