Descreva o bug
A duração da inicialização do aplicativo UWP é proporcional ao número de ativos incluídos no projeto (por exemplo, imagens com Build Action definida como _Content_). Mesmo para uma página em branco simples, que não faz nada, apenas ter muitos ativos presentes no pacote do aplicativo faz com que o aplicativo carregue extremamente lento - enquanto o código não os toca em nada.
Passos para reproduzir o bug
Passos para reproduzir o comportamento:
Assets
(mesmo ícones são suficientes)Para maior comodidade, criei uma reprodução simples aqui no GitHub . Ele contém dois aplicativos - um é um aplicativo UWP em branco simples sem nenhum ativo, o segundo é um aplicativo UWP em branco com muitos ativos de conteúdo de imagem (que, no entanto, não são usados de forma alguma.
Comportamento esperado
Quando o aplicativo não usa os arquivos de conteúdo de forma alguma, eles não devem afetar o tempo de inicialização do aplicativo (como os arquivos já estão implantados com o pacote, então o aplicativo não deve manipulá-los na inicialização).
Capturas de tela
_Saída do perfilador_
Observe que o criador de perfil mostra todo o tempo de inicialização gasto na janela redimensionada .
Durante a depuração, você pode ver que quase não há atividade de CPU ou RAM durante esse tempo de espera.
Informação da versão
Versão do pacote NuGet: nenhuma necessária, UWP clássico é suficiente
| Versão do Windows 10 | Viu o problema? |
| : --------------------------------- | : -------------------- |
| Versão do Insider (xxxxx) | Sim |
| Atualização de novembro de 2019 (18363) | Sim |
| Atualização de maio de 2019 (18362) | Sim |
| Atualização de outubro de 2018 (17763) | Sim |
| Atualização de abril de 2018 (17134) | |
| Atualização de criadores de outono (16299) | |
| Atualização de criadores (15063) | |
| Fator de forma do dispositivo | Viu o problema? |
| : -------------------- | : ------------------- |
| Desktop | Sim |
| Mobile | Sim |
| Xbox | |
| Surface Hub | |
| IoT | |
Contexto adicional
Percebi isso há muito tempo com meu aplicativo, que tem muitas imagens de ícones de conteúdo, mas agora eu finalmente descobri qual é a causa raiz de sua inicialização tão lenta.
@ Austin-Lamb @ bartekk8 A reprodução é apenas com os bits da plataforma (sem winUI).
@ranjeshj Isso é verdade, não importaria se eu adicionasse Microsoft.UI
. Infelizmente não há lugar melhor para relatar problemas de UWP (que seriam vistos pelos desenvolvedores), é por isso que postei o problema aqui. Vou postá-lo novamente no Windows Feedback também, mas não tenho certeza se ele chegará à equipe de desenvolvedores de lá.
@MartinZikmund Você tem o WinUI3, os bits da plataforma estão sendo movidos para fora do sistema operacional. Portanto, podemos rastrear esse problema aqui. Obrigado por relatar.
Comentários muito úteis
@MartinZikmund Você tem o WinUI3, os bits da plataforma estão sendo movidos para fora do sistema operacional. Portanto, podemos rastrear esse problema aqui. Obrigado por relatar.