Exportar (0) Imprimir
Expandir Tudo
Este artigo foi traduzido manualmente. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Escolhendo uma estratégia de atualização do ClickOnce

ClickOnce pode fornecer atualizações automáticas para o aplicativo. Um aplicativo ClickOnce lê periodicamente o arquivo de manifesto de implantação para verificar se há atualizações disponíveis para ele. Se disponível, a nova versão do aplicativo será baixada e executada. Para proporcionar eficiência, somente os arquivos que foram alterados serão baixados.

Ao criar um aplicativo ClickOnce, será necessário determinar qual estratégia o aplicativo usará para verificar se há atualizações disponíveis. Há três estratégias básicas que você pode usar: verificar se há atualizações na inicialização do aplicativo, verificar se há atualizações após a inicialização do aplicativo (executada em um thread em segundo plano) ou fornecer uma interface do usuário para atualizações.

Além disso, você poderá determinar a frequência com que o aplicativo verificará se há atualizações e fazer as atualizações necessárias.

Observação Observação

Atualizações de aplicativos necessitam de conectividade de rede. Se uma conexão de rede não estiver presente, o aplicativo será executado sem verificar se há atualizações, independentemente da estratégia de atualização que você escolher.

Observação Observação

No .NET Framework 2.0 e .NET Framework 3.0, quando seu aplicativo verificar se há atualizações, antes ou após a inicialização, ou ao usar as APIs System.Deployment.Application, você deverá definir deploymentProvider no manifesto de implantação. O elemento deploymentProvider corresponde no Visual Studio ao campo Local de atualização na caixa de diálogo Atualizações da guia Publicar. Essa regra é consentida no .NET Framework 3.5. Para obter mais informações, consulte Implantando aplicativos ClickOnce sem Desistindo do jogo.

Utilizando esta estratégia, a aplicação tentará localizar e ler o arquivo de manifesto da distribuição em segundo plano, enquanto a aplicação é executada. Se uma atualização estiver disponível, na próxima vez que o usuário executar o aplicativo, o download e a instalação da atualização serão solicitados.

Essa estratégia funciona melhor para conexões de rede com largura da banda baixa ou aplicativos maiores que podem exigir downloads longos.

Para habilitar essa estratégia de atualização, clique em Depois que o aplicativo inicializar na seção Escolha quando o aplicativo deve verificar por atualizações na caixa de diálogo Atualizações do Aplicativo. Em seguida, especifique um intervalo de atualização na seção Especifique com que frequência o aplicativo deve verificar por atualizações.

Isso é o mesmo que alterar o elemento Atualizar no manifesto de implantação como:

   <!-- When to check for updates -->
   <subscription>
      <update>
         <expiration maximumAge="6" unit="hours" />
      </update>
   </subscription>

A estratégia padrão é tentar localizar e ler o arquivo de manifesto de implantação antes do início do aplicativo. Utilizando esta estratégia, a aplicação tentará localizar e ler o arquivo de manifesto da distribuição toda vez que o usuário iniciar a aplicação. Se uma atualização estiver disponível, ela será baixada e iniciada. Caso contrário, a versão existente do aplicativo será iniciada.

Essa estratégia funciona melhor para conexões de rede de alta largura da banda; o atraso para iniciar o aplicativo pode ser inaceitavelmente longo em conexões de baixa largura de banda.

Para habilitar essa estratégia de atualização, clique em Antes do aplicativo inicializar na seção Escolha quando o aplicativo deve verificar por atualizações na caixa de diálogo Atualizações do Aplicativo.

Isso é o mesmo que alterar o elemento Atualizar no manifesto de implantação como:

   <!-- When to check for updates -->
   <subscription>
      <update>
         <beforeApplicationStartup />
      </update>
   </subscription>

Talvez haja ocasiões em que você deseje exigir que usuários executem uma versão atualizada de seu aplicativo. Por exemplo, você talvez faça uma alteração num recurso externo como um serviço Web que impediria que a versão anterior do seu aplicativo  funcionasse corretamente. Nesse caso, talvez você deseje marcar sua atualização como obrigatória e evitar que os usuários executem a versão anterior.

Observação Observação

Embora você possa exigir atualizações ao usar as outras estratégias de atualização, selecionar Antes do aplicativo inicializar é a única maneira de garantir que uma versão mais antiga não possa ser executada. Quando a atualização obrigatória for detectada na inicialização, o usuário deverá aceitar a atualização ou fechar o aplicativo.

Para marcar uma atualização como obrigatória, clique em Especifique a versão mínima necessária para este aplicativo na caixa de diálogo Atualizações do Aplicativo e especifique a versão de publicação (Principal, Secundária, Compilação, Revisão) que especifica a versão mais antiga do aplicativo que pode ser instalada.

Isso é o mesmo que definir o atributo minimumRequiredVersion do elemento Deployment no manifesto de implantação; por exemplo:

   <deployment install="true" minimumRequiredVersion="1.0.0.0">

Você também pode especificar a frequência com que o aplicativo verificará se há atualizações. Para fazer isso, especifique a verificação de atualizações pelo aplicativo após a inicialização como descrito em "Verificando se há atualizações após a inicialização do aplicativo" anteriormente neste tópico.

Para especificar o intervalo de atualização, defina as propriedades de Especifique com que frequência o aplicativo deve verificar por atualizações na caixa de diálogo Atualizações do Aplicativo.

Isso é o mesmo que definir os atributos maximumAge e unit do elemento Update no manifesto de implantação.

Por exemplo, talvez você deseje verificar sempre que o aplicativo é executado, uma vez por semana ou uma vez por mês. Se uma conexão de rede não estiver presente na hora especificada, a verificação de atualização será executada na próxima vez que o aplicativo for executado.

Ao usar esta estratégia, o desenvolvedor de aplicativos fornece uma interface que permite ao usuário escolher quando ou com que frequência o aplicativo verificará se há atualizações. Por exemplo, você pode fornecer um comando "Verificar se Há Atualizações" ou uma caixa de diálogo "Configurações de Atualização" que contenha escolhas para intervalos de atualização diferentes. As APIs de implantação de ClickOnce fornecem uma estrutura para programar a sua própria interface de usuário de atualização. Para obter mais informações, consulte o namespace de System.Deployment.Application.

Se seu aplicativo usar APIs de implantação para controlar sua própria lógica de atualização, você deverá bloquear a verificação de atualização como descrito em "Bloqueando verificação de atualizações" na seção a seguir.

Essa estratégia funciona melhor quando você necessita de estratégias de atualização diferentes para usuários diferentes.

Também é possível evitar que seu aplicativo nunca verifique as atualizações. Por exemplo, você pode ter um aplicativo simples que nunca foi atualizado, mas você deseja aproveitar a facilidade que a instalação ClickOnce fornece.

Você também deverá bloquear a verificação de atualizações se seu aplicativo usar APIs de implantação para executar suas próprias atualizações; consulte "Fornecendo uma interface de usuário para atualizações" anteriormente neste tópico.

Para bloquear a verificação de atualizações, desmarque a caixa de seleção O aplicativo deve verificar por atualizações na caixa de diálogo Atualizações do Aplicativo.

Você também pode bloquear a verificação de atualizações ao remover a marca <Subscription> do manifesto de implantação.

Se uma nova versão de um ClickOnce aplicativo requerer um nível mais alto de confiança do que a versão anterior para executar, o ClickOnce avisará o usuário, perguntando se ele deseja que a aplicativo conceda este nível mais alto de confiança.


Se o usuário recusar a concessão do nível mais alto de confiança, a atualização não será instalada. ClickOnce solicitará que o usuário instale o aplicativo novamente quando ele for reiniciado na próxima vez. Se o usuário recusar conceder o nível mais alto de confiança neste momento, e a atualização não estiver marcada como o necessário, a versão antiga do aplicativo será executada. No entanto, se a atualização for necessária, o aplicativo não será executado novamente até que o usuário aceite o nível mais alto de confiança.

Nenhum aviso sobre níveis de confiança ocorrerá se você usar a Implantação de Aplicativo de Confiança. Para obter mais informações, consulte Visão geral sobre implantação de Aplicativo Confiável.

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2014 Microsoft