Fazer sideload de um pacote de imagem de aplicativo para teste
Importante
Esta é a documentação do Azure Sphere (Legado). O Azure Sphere (Legado) será desativado em 27 de setembro de 2027 e os usuários devem migrar para o Azure Sphere (Integrado) até esse momento. Use o seletor de versão localizado acima do sumário para exibir a documentação do Azure Sphere (Integrado).
Durante o desenvolvimento, talvez seja necessário fazer sideload de um pacote de imagem no dispositivo Azure Sphere para teste. Quando você cria um aplicativo com o Visual Studio ou Visual Studio Code ambiente de desenvolvimento integrado (IDE), o SDK empacota a imagem do aplicativo para você. Se você tiver acesso direto a um dispositivo do Azure Sphere, o SDK também poderá excluir aplicativos existentes que não estejam marcados como parceiros, carregar o novo pacote de imagem no dispositivo, iniciá-lo e habilitar a depuração. Você também pode fazer sideload de um pacote de imagem diretamente da linha de comando.
Primeiro, você deve habilitar o recurso appDevelopment para o dispositivo e adicioná-lo a um grupo de dispositivos que não ofereça suporte a atualizações de aplicativos na nuvem. A atribuição de dispositivos a esse grupo garante que seus aplicativos de sideload não serão substituídos por implantações na nuvem. Para preparar seu dispositivo, use o comando azsphere device enable-development. Em seguida, você pode fazer sideload da imagem.
Sideload e depurar um pacote de imagem a partir da linha de comando
Para fazer sideload do pacote de imagem da linha de comando, exclua todos os aplicativos existentes no dispositivo e, em seguida, carregue o novo.
Para parar e excluir todos os aplicativos no dispositivo:
azsphere device sideload delete
Para excluir um único aplicativo, adicione a opção --component-id, da seguinte maneira:
azsphere device sideload delete --component-id <ComponentID>
Em seguida, faça sideload do novo pacote de imagens:
azsphere device sideload deploy --image-package <imagepackagepath>
Substitua imagepackagepath pelo caminho para o pacote de imagens. Se você estiver usando o Visual Studio ou Visual Studio Code, você pode encontrar o pacote de imagem na subpasta bin\ARM\Debug ou bin\ARM\Release da pasta de projeto do aplicativo. Por padrão, o comando inicia o aplicativo depois de implantá-lo.
Para depurar o aplicativo, adicione o sinalizador --manual-start ao comando azsphere device sideload deploy para suprimir o início automático e, em seguida, inicie o aplicativo para depuração:
azsphere device sideload deploy --manual-start --image-package <imagepackagepath>
azsphere device app start --debug --component-id <ComponentID>
O comando exibe as portas de saída e depuração para aplicativos de alto nível:
Output Port: 2342
GDB Port: 2345
Marcar aplicações como parceiros
Os aplicativos relacionados devem ser marcados como aplicativos parceiros. Há muitas situações em que você carregaria vários aplicativos, como um par de aplicativos de alto nível e em tempo real que se comunicam entre si. Marcar os aplicativos como parceiros impedirá que um seja excluído quando o segundo for carregado. Quando os IDEs de código do Visual Studio e do Visual Studio fazem sideload de um novo pacote de imagem, eles excluem todos os aplicativos existentes que não estão marcados como aplicativos parceiros.
Para marcar um aplicativo como um parceiro usando CMake no Visual Studio:
Edite o arquivo launch.vs.json do aplicativo.
Adicione a seguinte linha:
"partnerComponents": [ "<Component ID>" ]
Substitua o ID do componente do aplicativo
<Component ID>
parceiro e salve o arquivo. Você pode encontrar o ID do componente de cada aplicativo em seu arquivo app_manifest.json ou usando azsphere device image list-installed ou azsphere device app show-status.
Para marcar um aplicativo como um parceiro usando CMake no Visual Studio Code:
Edite o arquivo .vscode\launch.json para o aplicativo.
Adicione a seguinte linha:
"partnerComponents": [ "<Component ID>" ]
Substitua o ID do componente do aplicativo
<Component ID>
parceiro e salve o arquivo. Você pode encontrar o ID do componente de cada aplicativo em seu arquivo app_manifest.json ou usando azsphere device image list-installed ou azsphere device app show-status.