Compartilhar via


Fazer um sideload de um pacote de imagem do aplicativo para teste

Importante

Esta é a documentação do Azure Sphere (herdado). O Azure Sphere (herdado) 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 realizar o sideload de um pacote de imagem para o dispositivo do Azure Sphere para teste. Quando você compila um aplicativo com o IDE (ambiente de desenvolvimento integrado) do Visual Studio ou do Visual Studio Code, o SDK empacota a imagem do aplicativo para você. Se você tiver acesso direto a um dispositivo 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 realizar o sideload de um pacote de imagem diretamente da linha de comando.

Você deve primeiro habilitar a funcionalidade appDevelopment para o dispositivo e adicionar o dispositivo a um grupo de dispositivos não compatível com atualizações de aplicativos de nuvem. Atribuir dispositivos a esses grupos assegura que seus aplicativos com sideload não serão substituídos por implantações de nuvem. Para preparar seu dispositivo, use o comando azsphere device enable-development. Então você pode realizar sideload da imagem.

Realize o sideload e depure um pacote de imagem da linha de comando

Para realizar o sideload do pacote de imagem da linha de comando, exclua todos os aplicativos existentes no dispositivo e, em seguida, carregue o novo.

Para interromper 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, realize o sideload do novo pacote de imagem:

azsphere device sideload deploy --image-package <imagepackagepath>

Substitua imagepackagepath com o caminho para o pacote de imagens. Se você estiver usando o Visual Studio ou o Visual Studio Code, encontre o pacote de imagens na subpasta bin\ARM\Debug ou bin\ARM\Release da pasta de projeto do aplicativo. Por padrão, o comando inicia o aplicativo após 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 aplicativos como parceiros

Aplicativos relacionados devem ser marcados como aplicativos de parceiro. 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 é carregado. Quando os IDEs do Visual Studio e do Visual Studio Code realizam o sideload de um novo pacote de imagem, eles excluem todos os aplicativos existentes que não estão marcados como aplicativos de parceiro.

Para marcar um aplicativo como um parceiro usando o CMake no Visual Studio:

  1. Edite o arquivo launch.vs.json para o aplicativo.

  2. Adicione a seguinte linha:

    "partnerComponents": [ "<Component ID>" ]
    

    Substitua a ID do componente do aplicativo de parceiro para <Component ID> e salve o arquivo. Você pode encontrar a 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 o CMake no Visual Studio Code:

  1. Edite o arquivo .vscode\launch.json do aplicativo.

  2. Adicione a seguinte linha:

    "partnerComponents": [ "<Component ID>" ]
    

    Substitua a ID do componente do aplicativo de parceiro para <Component ID> e salve o arquivo. Você pode encontrar a 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.