Passar parâmetros de instalação para seu aplicativo por meio do Instalador de Aplicativo
Ao distribuir seu aplicativo com o MSIX, você pode configurá-lo para que os parâmetros da cadeia de caracteres de consulta que você define na URI de download/instalação sejam transmitidos para o aplicativo quando ele é iniciado, após o usuário clicar na URI de download/instalação. Isso funciona se for a primeira vez que um usuário está instalando o aplicativo ou se o aplicativo já tinha sido instalado anteriormente. Este artigo mostra como configurar seu aplicativo empacotado e sua URI de download/instalação para aproveitar essa funcionalidade. Isso pode ser útil se você quiser monitorar ou gerenciar diferentes instalações com base na origem, tipo de download, etc., e funcionará para downloads da web e em quaisquer outros casos em que um usuário clique na URI, como em uma campanha de e-mail. Confira esta postagem de blog para obter mais detalhes.
Configurar seu aplicativo para ativação de protocolo
A primeira coisa a fazer é registrar seu aplicativo para que ele seja iniciado usando um protocolo personalizado que você mesmo define. Quando esse protocolo é acionado, seu aplicativo é iniciado e quaisquer parâmetros especificados na URI são passados para os argumentos de ativação do seu aplicativo quando ele é iniciado. Você pode registrar o protocolo adicionando uma entrada de extensão de protocolo no nó Extensões de Aplicativos no arquivo appxmanifest.xml do seu MSIX:
<Application>
...
<Extensions>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="my-custom-protocol"/>
</uap:Extension>
</Extensions>
...
</Application>
Se você estiver usando o Projeto de Empacotamento do Windows, também pode definir um protocolo personalizado usando o editor de manifesto padrão, clicando duas vezes no arquivo package.appxmanifest, navegando até a guia Declarações e selecionando Protocolo em Declarações Disponíveis:
Escrever código para manipular parâmetros quando seu aplicativo é iniciado após a instalação
Você precisará programar o código em seu aplicativo para gerenciar os parâmetros de instalação que serão transmitidos para o seu aplicativo quando ele for iniciado. No código de exemplo abaixo, é usado o método AppInstance.GetActivatedEventArgs para determinar o tipo de ativação usado para iniciar um aplicativo (também é possível gerenciar os parâmetros usando um método diferente). Quando seu aplicativo é lançado/ativado com parâmetros de cadeia de caracteres de consulta com base em uma URI de instalação (consulte a definição na próxima seção), o tipo de ativação será uma ativação de protocolo, conforme definido pelo protocolo personalizado declarado em seu appxmanifest.xml e na URI de download/instalação. Os argumentos de ativação serão do tipo ProtocolActivatedEventArgs, e é isso que o código a seguir utiliza:
using Windows.ApplicationModel;
using Windows.ApplicationModel.Activation;
public static void Main(string[] cmdArgs)
{
var activationArgs = AppInstance.GetActivatedEventArgs();
switch (activationArgs.Kind)
{
//Install parameters will be passed in during a protocol activation
case ActivationKind.Protocol:
HandleProtocolActivation(activationArgs as ProtocolActivatedEventArgs);
break;
case ActivationKind.Launch:
//Regular launch activation type
HandleLaunch(activationArgs as LaunchActivatedEventArgs);
break;
default:
break;
}
static void HandleProtocolActivation(ProtocolActivatedEventArgs args)
{
if (args.Uri != null)
{
//Handle the installation parameters in the protocol uri
handleInstallParameter(args.Uri.ToString());
}
}
Adicione seu protocolo de ativação personalizado e parâmetros à URI de instalação
Depois de configurar seu aplicativo para gerenciar os parâmetros de instalação, você pode personalizar a URI de download/instalação do aplicativo para conter parâmetros exclusivamente definidos que serão transmitidos para o seu aplicativo no momento do lançamento, após o usuário clicar na URI. A URI deve conter:
- O protocolo ms-appinstaller que invoca o Instalador de Aplicativos.
- O parâmetro de ativação exclusivo activationUri que se refere ao protocolo personalizado do seu aplicativo e os parâmetros de instalação que você deseja que sejam repassados para o seu aplicativo quando ele for lançado.
- O protocolo personalizado de seu aplicativo e o parâmetro com seu valor.
Nos URIs de exemplo abaixo, defini um protocolo personalizado, my-custom-protocol, um parâmetro, my-parameter, e atribuí a ele o valor my-param-value. Após o usuário clicar na URI e iniciar o aplicativo, o aplicativo receberá a parte da sequência de consulta da URI após activationUri, que, neste caso, será my-custom-protocol:?my-parameter=my-param-value.
ms-appinstaller:?source=https://contoso.com/myapp.appinstaller&activationUri=my-custom-protocol:?my-parameter=my-param-value
ms-appinstaller:?source=https://contos.com/myapp.msix&activationUri=my-custom-protocol:?my-parameter=my-param-value
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de