Estender seu aplicativo com serviços, extensões e pacotes

Há muitas tecnologias no Windows 10 para estender e componenter seu aplicativo. Esta tabela deve ajudá-lo a determinar qual tecnologia você deve usar dependendo dos requisitos. Ela é seguida por uma breve descrição dos cenários e tecnologias.

Cenário Pacote de recursos Pacote de ativos Pacote opcional Pacote simples Extensão de aplicativo serviço de aplicativo Instalação de streaming
Plug-ins de código de terceiros ✔️
Plug-ins de código em processamento ✔️
Ativos de experiência do usuário (cadeias de caracteres/imagens) ✔️ ✔️ ✔️ ✔️ ✔️
Conteúdo sob demanda
(por exemplo, níveis adicionais)
✔️ ✔️ ✔️
Licenciamento e aquisição separados ✔️ ✔️ ✔️
Aquisição no aplicativo ✔️ ✔️
Otimizar o tempo de instalação ✔️ ✔️ ✔️ ✔️
Reduzir o volume de disco ✔️ ✔️
Otimizar o empacotamento ✔️ ✔️ ✔️
Reduzir o tempo de publicação ✔️ ✔️ ✔️ ✔️

Descrições de cenário (as linhas na tabela acima)

Plug-ins de terceiros

Código que você pode baixar da loja e executar no seu aplicativo. Por exemplo, extensões do navegador Microsoft Edge.

Plug-ins de código em processamento

Código que é executado em processo com seu aplicativo. Também pode incluir o conteúdo. Como o código é executado no processo, é considerado um nível mais alto de confiança. Você pode optar por não expor esse tipo de extensibilidade a terceiros.

Ativos de experiência do usuário (cadeia de caracteres/imagens)

Ativos de interface do usuário, como cadeias de caracteres localizadas, imagens e qualquer outro conteúdo de interface do usuário que você deseja incluir com base na localidade ou qualquer outro motivo.

Conteúdo sob demanda

Conteúdo que você deseja baixar mais tarde. Por exemplo, compras no aplicativo que permitem a você baixar novos níveis, capas ou funcionalidades.

Licenciamento e aquisição separados

A capacidade de licenciar e adquirir conteúdo independentemente do aplicativo.

Aquisição no aplicativo

Indica se há suporte programático para adquirir o conteúdo no aplicativo.

Otimizar o tempo de instalação

Oferece a funcionalidade para reduzir o tempo necessário para adquirir o aplicativo da loja e iniciar a execução.

Reduzir o volume de disco reduz o tamanho de um aplicativo, incluindo somente os aplicativos ou recursos necessários.

Otimizar o empacotamento Otimiza o processo de empacotamento de aplicativos para aplicativos complexos ou em grande escala.

Reduzir o tempo de publicação Minimiza o tempo necessário para publicar seu aplicativo na Store, no compartilhamento local ou no servidor Web.

Descrições de tecnologia (as colunas na tabela acima)

Pacote de recursos

Pacotes de recursos são apenas pacotes de ativos que permitem ao aplicativo se adaptar a vários tamanhos de tela e idiomas do sistema. O pacote de recursos visa o idioma do usuário, a escala do sistema e os recursos do DirectX, permitindo que o aplicativo seja adaptado para diversos cenários de usuário. Embora um pacote do aplicativo possa conter vários recursos, o sistema operacional baixa apenas os recursos relevantes por dispositivo do usuário, economizando espaço em disco e largura de banda.

Pacote de ativos Os pacotes de ativos são uma fonte comum centralizada de arquivos executáveis ou não executáveis para uso pelo aplicativo. Normalmente, são arquivos não processadores ou específicos do idioma. Por exemplo, isso pode incluir uma coleção de fotos no pacote de um ativo e vídeos em outro pacote de ativo, que são usados pelo aplicativo. Se seu aplicativo der suporte a várias arquiteturas e vários idiomas, esses ativos poderão ser incluídos no pacote de arquitetura ou no pacote de recursos, mas isso também significa que os ativos seriam duplicados várias vezes nos vários pacotes de arquitetura, ocupando espaço em disco. Se os pacotes de ativos forem usados, eles devem ser incluídos somente no pacote do aplicativos uma vez. Consulte Introdução aos pacotes de ativos para saber mais.

Pacotes opcionais

Os pacotes opcionais são usados para complementar ou estender a funcionalidade original do pacote do aplicativo. É possível publicar um aplicativo, seguido da publicação de pacotes opcionais em um momento posterior, ou publicar pacotes de aplicativo e opcionais simultaneamente. Ao estender seu aplicativo por meio de um pacote opcional, você tem as vantagens de distribuir e monetizar conteúdo como um pacote de aplicativo separado. Os pacotes opcionais geralmente devem ser desenvolvidos pelo desenvolvedor do aplicativo original, pois são executados com a identidade do aplicativo principal (diferente das extensões de aplicativo). Dependendo de como você define o pacote opcional, você pode carregar código, ativos ou código e ativos do pacote opcional para o aplicativo principal. Se você precisar aprimorar seu aplicativo com conteúdo que possa ser monetizado, licenciado e distribuído separadamente, os pacotes opcionais poderão ser a opção certa para você. Para obter detalhes de implementação, consulte Criação de pacotes opcionais e conjunto relacionado.

Pacote simplesPacotes simples do aplicativo são semelhantes aos regulares, exceto que em vez de incluírem todos os pacotes de aplicativo na pasta, o pacote simples contém apenas referências aos pacotes de aplicativo. Por conter referências aos pacotes de aplicativo em vez dos próprios arquivos, um pacote simples reduz o tempo necessário para empacotar e baixar um aplicativo.

Extensão de aplicativo

Extensões de aplicativos permitem que seu aplicativo UWP hospede conteúdo fornecido por outros aplicativos UWP. Descubra, enumere e acesse conteúdo somente leitura desses aplicativos.

Se um aplicativo oferece suporte a extensões, qualquer desenvolvedor pode enviar uma extensão para o aplicativo. Assim, o aplicativo host precisa ser robusto quando carrega uma extensão com a qual ainda não foi testada previamente. As extensões devem ser consideradas não confiáveis.

Os aplicativos não podem carregar o código a partir das extensões. Se você precisar de execução de código, considere os Serviços de aplicativo.

Serviço de Aplicativo

Os serviços de aplicativos do Windows permitem a comunicação entre aplicativos, permitindo que seu aplicativo UWP forneça serviços para outro aplicativo Universal do Windows. Os serviços de aplicativo permitem que você crie serviços sem interface do usuário que os aplicativos podem chamar no mesmo dispositivo e, a partir do Windows 10, versão 1607, nos dispositivos remotos. Consulte Criar e consumir um serviço de aplicativo para obter mais detalhes.

Os serviços de aplicativo são aplicativos UWP que fornecem serviços a outros aplicativos UWP. Eles são análogos aos serviços Web em um dispositivo. Um serviço de aplicativo é executado como uma tarefa em segundo plano no aplicativo host e pode fornecer seu serviço a outros aplicativos. Por exemplo, um serviço de aplicativo pode fornecer um serviço de scanner de código de barras que outros aplicativos podem usar. Ou talvez um conjunto de aplicativos Enterprise tenha um serviço de verificação ortográfica que está disponível para os outros aplicativos no pacote.

Instalação do Streaming de Aplicativo UWP

A Instalação de streaming é uma maneira de otimizar o modo como seu aplicativo é disponibilizado aos usuários. Em vez de aguardar até que o aplicativo inteiro seja baixado antes que você poder usá-lo, os usuários podem interagir com o aplicativo assim que uma parte necessária for baixada. Cabe a você, como um desenvolvedor, segmentar seu aplicativo em uma seção obrigatória para ativação básica e iniciar e conteúdo adicional para o restante do aplicativo. Consulte Instalar streaming de aplicativo UWP para obter mais informações e detalhes sobre a implementação.

Consulte Também

Criar e consumir um serviço de aplicativo
Introdução aos pacotes de ativo
Criação do pacote com o layout de empacotamento
Criação de pacotes opcionais e conjunto relacionado
Desenvolvendo com os pacotes de ativo e dobramento de pacote
Instalação de streaming de aplicativo UWP
Pacotes de aplicativo do pacote simples
Namespace Windows.ApplicationModel.AppService
Namespace Windows.ApplicationModel.Extensions